home *** CD-ROM | disk | FTP | other *** search
MacBinary | 1994-09-28 | 15.0 KB | [TEXT/KAHL] |
open in:
MacOS 8.1
|
Win98
|
DOS
browse contents |
view JSON data
|
view as text
This file was processed as: MacBinary
(archive/macBinary).
Confidence | Program | Detection | Match Type | Support
|
---|
10%
| dexvert
| MacBinary (archive/macBinary)
| fallback
| Supported |
1%
| dexvert
| MS-DOS Code Page Info (other/dosCodePage)
| ext
| Unsupported |
1%
| dexvert
| Text File (text/txt)
| fallback
| Supported |
100%
| file
| MacBinary II, inited, Wed Sep 28 19:48:19 1994, modified Wed Sep 28 19:48:19 1994, creator Think C, type ASCII, 14550 bytes "CStandApp.cp" , at 0x3956 514 bytes resource
| default (weak)
| |
99%
| file
| data
| default
| |
74%
| TrID
| Macintosh plain text (MacBinary)
| default
| |
25%
| TrID
| MacBinary 2
| default (weak)
| |
100%
| siegfried
| fmt/1762 MacBinary (II)
| default
| |
100%
| lsar
| MacBinary
| default
|
|
id metadata |
---|
key | value |
---|
macFileType | [TEXT] |
macFileCreator | [KAHL] |
hex view+--------+-------------------------+-------------------------+--------+--------+
|00000000| 00 0c 43 53 74 61 6e 64 | 41 70 70 2e 63 70 00 00 |..CStand|App.cp..|
|00000010| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000020| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000030| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00000040| 00 54 45 58 54 4b 41 48 | 4c 01 00 00 00 00 00 00 |.TEXTKAH|L.......|
|00000050| 00 00 00 00 00 38 d6 00 | 00 02 02 aa af b1 43 aa |.....8..|......C.|
|00000060| af b1 43 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |..C.....|........|
|00000070| 00 00 00 00 00 00 00 00 | 00 00 81 81 4e 8c 00 00 |........|....N...|
|00000080| 2f 2a 2a 2a 2a 0d 20 2a | 20 43 53 74 61 6e 64 41 |/****. *| CStandA|
|00000090| 70 70 2e 63 0d 20 2a 0d | 20 2a 09 4d 65 74 68 6f |pp.c. *.| *.Metho|
|000000a0| 64 73 20 66 6f 72 20 61 | 20 73 74 61 6e 64 61 6c |ds for a| standal|
|000000b0| 6f 6e 65 20 53 74 61 6e | 64 20 61 70 70 6c 69 63 |one Stan|d applic|
|000000c0| 61 74 69 6f 6e 20 63 6c | 61 73 73 2e 0d 20 2a 0d |ation cl|ass.. *.|
|000000d0| 20 2a 09 43 6f 70 79 72 | 69 67 68 74 20 a9 20 31 | *.Copyr|ight . 1|
|000000e0| 39 39 32 20 4e 65 6f 4c | 6f 67 69 63 20 53 79 73 |992 NeoL|ogic Sys|
|000000f0| 74 65 6d 73 2e 09 41 6c | 6c 20 72 69 67 68 74 73 |tems..Al|l rights|
|00000100| 20 72 65 73 65 72 76 65 | 64 2e 0d 20 2a 0d 20 2a | reserve|d.. *. *|
|00000110| 2a 2a 2a 2f 0d 0d 23 69 | 6e 63 6c 75 64 65 20 22 |***/..#i|nclude "|
|00000120| 4e 65 6f 54 79 70 65 73 | 2e 68 22 0d 23 69 6e 63 |NeoTypes|.h".#inc|
|00000130| 6c 75 64 65 20 43 4e 65 | 6f 44 61 74 61 62 61 73 |lude CNe|oDatabas|
|00000140| 65 4e 61 74 69 76 65 48 | 0d 0d 23 69 6e 63 6c 75 |eNativeH|..#inclu|
|00000150| 64 65 20 3c 54 69 6d 65 | 72 2e 68 3e 0d 23 69 6e |de <Time|r.h>.#in|
|00000160| 63 6c 75 64 65 20 3c 74 | 69 6d 65 2e 68 3e 0d 23 |clude <t|ime.h>.#|
|00000170| 69 6e 63 6c 75 64 65 20 | 3c 73 74 64 6c 69 62 2e |include |<stdlib.|
|00000180| 68 3e 0d 23 69 6e 63 6c | 75 64 65 20 3c 54 72 61 |h>.#incl|ude <Tra|
|00000190| 70 73 2e 68 3e 0d 23 69 | 6e 63 6c 75 64 65 20 3c |ps.h>.#i|nclude <|
|000001a0| 53 74 61 6e 64 61 72 64 | 46 69 6c 65 2e 68 3e 0d |Standard|File.h>.|
|000001b0| 23 69 66 64 65 66 20 54 | 48 49 4e 4b 5f 43 50 4c |#ifdef T|HINK_CPL|
|000001c0| 55 53 0d 23 69 6e 63 6c | 75 64 65 20 3c 63 6f 6e |US.#incl|ude <con|
|000001d0| 73 6f 6c 65 2e 68 3e 0d | 23 65 6e 64 69 66 0d 23 |sole.h>.|#endif.#|
|000001e0| 69 66 20 5f 5f 4d 57 45 | 52 4b 53 5f 5f 0d 23 69 |if __MWE|RKS__.#i|
|000001f0| 6e 63 6c 75 64 65 20 3c | 53 49 4f 55 58 2e 68 3e |nclude <|SIOUX.h>|
|00000200| 0d 23 65 6e 64 69 66 0d | 23 69 6e 63 6c 75 64 65 |.#endif.|#include|
|00000210| 20 3c 6e 65 77 2e 68 3e | 0d 0d 23 69 6e 63 6c 75 | <new.h>|..#inclu|
|00000220| 64 65 20 22 43 53 74 61 | 6e 64 41 70 70 2e 68 22 |de "CSta|ndApp.h"|
|00000230| 0d 23 69 6e 63 6c 75 64 | 65 20 43 4e 65 6f 4d 65 |.#includ|e CNeoMe|
|00000240| 74 61 43 6c 61 73 73 48 | 0d 23 69 6e 63 6c 75 64 |taClassH|.#includ|
|00000250| 65 20 43 4e 65 6f 49 6e | 64 65 78 49 74 65 72 61 |e CNeoIn|dexItera|
|00000260| 74 6f 72 48 0d 23 69 6e | 63 6c 75 64 65 20 22 43 |torH.#in|clude "C|
|00000270| 46 69 6c 6c 65 72 2e 68 | 22 0d 23 69 6e 63 6c 75 |Filler.h|".#inclu|
|00000280| 64 65 20 43 4e 65 6f 50 | 65 72 73 69 73 74 48 0d |de CNeoP|ersistH.|
|00000290| 0d 23 69 66 6e 64 65 66 | 20 4e 65 6f 49 6e 68 65 |.#ifndef| NeoInhe|
|000002a0| 72 69 74 65 64 0d 23 64 | 65 66 69 6e 65 20 4e 65 |rited.#d|efine Ne|
|000002b0| 6f 49 6e 68 65 72 69 74 | 65 64 09 43 4e 65 6f 41 |oInherit|ed.CNeoA|
|000002c0| 70 70 41 6c 6f 6e 65 0d | 23 65 6e 64 69 66 0d 0d |ppAlone.|#endif..|
|000002d0| 23 64 65 66 69 6e 65 20 | 6b 33 30 4d 69 63 72 6f |#define |k30Micro|
|000002e0| 4d 69 6e 75 74 65 73 09 | 09 2d 28 31 38 30 30 30 |Minutes.|.-(18000|
|000002f0| 30 30 30 30 30 4c 29 0d | 0d 6c 6f 6e 67 20 67 4c |00000L).|.long gL|
|00000300| 6f 6f 70 4f 76 65 72 68 | 65 61 64 3b 09 09 09 2f |oopOverh|ead;.../|
|00000310| 2f 20 54 69 6d 65 72 20 | 4d 61 6e 61 67 65 72 20 |/ Timer |Manager |
|00000320| 4f 76 65 72 68 65 61 64 | 0d 0d 73 74 61 74 69 63 |Overhead|..static|
|00000330| 20 6c 6f 6e 67 20 64 65 | 66 61 75 6c 74 5f 76 61 | long de|fault_va|
|00000340| 6c 73 5b 35 5d 20 3d 20 | 7b 32 35 30 30 30 2c 20 |ls[5] = |{25000, |
|00000350| 32 35 30 30 30 2c 20 32 | 35 30 30 30 2c 20 32 35 |25000, 2|5000, 25|
|00000360| 30 30 30 2c 20 32 35 30 | 30 30 7d 3b 0d 23 69 66 |000, 250|00};.#if|
|00000370| 64 65 66 20 71 4e 65 6f | 54 68 72 65 61 64 73 0d |def qNeo|Threads.|
|00000380| 73 74 61 74 69 63 20 6c | 6f 6e 67 20 64 65 66 61 |static l|ong defa|
|00000390| 75 6c 74 5f 74 68 72 65 | 61 64 73 5b 35 5d 20 3d |ult_thre|ads[5] =|
|000003a0| 20 7b 31 2c 20 32 2c 20 | 32 2c 20 32 2c 20 31 7d | {1, 2, |2, 2, 1}|
|000003b0| 3b 0d 23 65 6e 64 69 66 | 0d 0d 73 74 61 74 69 63 |;.#endif|..static|
|000003c0| 20 53 74 72 32 35 35 20 | 50 68 61 73 65 4e 61 6d | Str255 |PhaseNam|
|000003d0| 65 5b 5d 20 3d 20 7b 09 | 22 20 20 20 20 20 20 20 |e[] = {.|" |
|000003e0| 20 20 49 6e 73 65 72 74 | 22 2c 0d 09 09 09 09 09 | Insert|",......|
|000003f0| 09 09 09 22 4c 6f 63 61 | 74 65 20 52 61 6e 64 6f |..."Loca|te Rando|
|00000400| 6d 6c 79 22 2c 0d 09 09 | 09 09 09 09 09 09 22 4c |mly",...|......"L|
|00000410| 6f 63 61 74 65 20 53 65 | 72 69 61 6c 6c 79 22 2c |ocate Se|rially",|
|00000420| 0d 09 09 09 09 09 09 09 | 09 22 20 20 20 20 20 20 |........|." |
|00000430| 20 20 20 43 68 61 6e 67 | 65 22 2c 0d 09 09 09 09 | Chang|e",.....|
|00000440| 09 09 09 09 22 20 20 20 | 20 20 20 20 20 20 44 65 |...." | De|
|00000450| 6c 65 74 65 22 7d 3b 0d | 73 74 61 74 69 63 20 53 |lete"};.|static S|
|00000460| 74 72 32 35 35 20 43 6f | 6c 4e 61 6d 65 73 5b 5d |tr255 Co|lNames[]|
|00000470| 20 3d 20 7b 20 22 5c 70 | 54 6f 74 61 6c 22 2c 20 | = { "\p|Total", |
|00000480| 22 5c 70 53 6f 20 46 61 | 72 22 2c 20 22 5c 70 50 |"\pSo Fa|r", "\pP|
|00000490| 65 72 20 52 65 63 6f 72 | 64 22 2c 20 22 5c 70 54 |er Recor|d", "\pT|
|000004a0| 6f 74 61 6c 22 7d 3b 0d | 09 09 09 09 09 09 09 0d |otal"};.|........|
|000004b0| 76 6f 69 64 20 6d 61 69 | 6e 28 76 6f 69 64 29 0d |void mai|n(void).|
|000004c0| 7b 0d 09 43 53 74 61 6e | 64 41 70 70 09 61 70 70 |{..CStan|dApp.app|
|000004d0| 3b 09 09 09 09 09 0d 0d | 09 61 70 70 2e 72 75 6e |;.......|.app.run|
|000004e0| 28 29 3b 0d 09 61 70 70 | 2e 65 78 69 74 28 29 3b |();..app|.exit();|
|000004f0| 0d 7d 0d 0d 76 6f 69 64 | 20 43 53 74 61 6e 64 41 |.}..void| CStandA|
|00000500| 70 70 3a 3a 4e 65 77 48 | 61 6e 64 6c 65 72 28 76 |pp::NewH|andler(v|
|00000510| 6f 69 64 29 0d 7b 0d 09 | 67 4e 65 6f 41 70 70 2d |oid).{..|gNeoApp-|
|00000520| 3e 70 75 72 67 65 28 31 | 29 3b 0d 7d 0d 0d 23 70 |>purge(1|);.}..#p|
|00000530| 72 61 67 6d 61 20 73 65 | 67 6d 65 6e 74 20 4e 65 |ragma se|gment Ne|
|00000540| 6f 43 72 65 61 74 65 0d | 43 53 74 61 6e 64 41 70 |oCreate.|CStandAp|
|00000550| 70 3a 3a 43 53 74 61 6e | 64 41 70 70 28 76 6f 69 |p::CStan|dApp(voi|
|00000560| 64 29 0d 7b 0d 09 6c 6f | 6e 67 09 09 69 6e 64 65 |d).{..lo|ng..inde|
|00000570| 78 3b 0d 09 6c 6f 6e 67 | 09 09 64 65 6c 61 79 09 |x;..long|..delay.|
|00000580| 09 3d 20 30 3b 0d 09 54 | 4d 54 61 73 6b 09 09 74 |.= 0;..T|MTask..t|
|00000590| 69 6d 65 72 3b 0d 09 53 | 46 52 65 70 6c 79 09 09 |imer;..S|FReply..|
|000005a0| 6d 61 63 53 46 52 65 70 | 6c 79 3b 0d 0d 09 73 65 |macSFRep|ly;...se|
|000005b0| 74 5f 6e 65 77 5f 68 61 | 6e 64 6c 65 72 28 4e 65 |t_new_ha|ndler(Ne|
|000005c0| 77 48 61 6e 64 6c 65 72 | 29 3b 0d 0d 23 69 66 64 |wHandler|);..#ifd|
|000005d0| 65 66 20 71 4e 65 6f 54 | 68 72 65 61 64 73 0d 09 |ef qNeoT|hreads..|
|000005e0| 66 54 68 72 65 61 64 43 | 6f 75 6e 74 20 3d 20 30 |fThreadC|ount = 0|
|000005f0| 3b 0d 09 66 6f 72 20 28 | 69 6e 64 65 78 20 3d 20 |;..for (|index = |
|00000600| 30 3b 20 69 6e 64 65 78 | 20 3c 20 6b 4d 61 78 54 |0; index| < kMaxT|
|00000610| 68 72 65 61 64 73 3b 20 | 69 6e 64 65 78 2b 2b 29 |hreads; |index++)|
|00000620| 0d 09 09 66 54 68 72 65 | 61 64 49 6e 66 6f 5b 69 |...fThre|adInfo[i|
|00000630| 6e 64 65 78 5d 2e 74 68 | 72 65 61 64 20 3d 20 6e |ndex].th|read = n|
|00000640| 69 6c 3b 0d 23 65 6e 64 | 69 66 0d 0d 09 66 44 61 |il;.#end|if...fDa|
|00000650| 74 61 62 61 73 65 20 3d | 20 6e 65 77 20 43 4e 65 |tabase =| new CNe|
|00000660| 6f 44 61 74 61 62 61 73 | 65 41 6c 6f 6e 65 28 6b |oDatabas|eAlone(k|
|00000670| 4e 65 6f 53 74 61 6e 64 | 53 69 67 2c 20 6b 4e 65 |NeoStand|Sig, kNe|
|00000680| 6f 53 74 61 6e 64 46 69 | 6c 65 54 79 70 65 29 3b |oStandFi|leType);|
|00000690| 0d 09 67 4e 65 6f 44 61 | 74 61 62 61 73 65 20 3d |..gNeoDa|tabase =|
|000006a0| 20 66 44 61 74 61 62 61 | 73 65 3b 0d 09 66 49 74 | fDataba|se;..fIt|
|000006b0| 65 72 61 74 6f 72 20 3d | 20 6e 69 6c 3b 0d 0d 09 |erator =| nil;...|
|000006c0| 43 68 6f 6f 73 65 46 69 | 6c 65 28 26 6d 61 63 53 |ChooseFi|le(&macS|
|000006d0| 46 52 65 70 6c 79 29 3b | 0d 09 66 44 61 74 61 62 |FReply);|..fDatab|
|000006e0| 61 73 65 2d 3e 53 46 53 | 70 65 63 69 66 79 28 26 |ase->SFS|pecify(&|
|000006f0| 6d 61 63 53 46 52 65 70 | 6c 79 29 3b 0d 09 66 44 |macSFRep|ly);..fD|
|00000700| 61 74 61 62 61 73 65 2d | 3e 63 72 65 61 74 65 28 |atabase-|>create(|
|00000710| 29 3b 0d 09 66 44 61 74 | 61 62 61 73 65 2d 3e 6f |);..fDat|abase->o|
|00000720| 70 65 6e 28 66 73 52 64 | 57 72 50 65 72 6d 29 3b |pen(fsRd|WrPerm);|
|00000730| 0d 0d 09 2f 2f 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...//---|--------|
|00000740| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000750| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000760| 2d 2d 2d 2d 2d 2d 2d 2d | 0d 09 2f 2f 20 47 65 74 |--------|..// Get|
|00000770| 20 74 68 65 20 6e 75 6d | 62 65 72 73 20 66 72 6f | the num|bers fro|
|00000780| 6d 20 74 68 65 20 44 69 | 61 6c 6f 67 20 62 6f 78 |m the Di|alog box|
|00000790| 2c 09 61 6e 64 20 75 70 | 64 61 74 65 0d 09 2f 2f |,.and up|date..//|
|000007a0| 20 74 68 65 20 66 69 65 | 6c 64 73 20 77 69 74 68 | the fie|lds with|
|000007b0| 20 74 68 65 20 76 61 6c | 75 65 73 20 6f 66 20 74 | the val|ues of t|
|000007c0| 68 65 20 6e 75 6d 62 65 | 72 73 20 74 68 65 0d 09 |he numbe|rs the..|
|000007d0| 2f 2f 20 75 73 65 72 20 | 68 61 73 20 74 79 70 65 |// user |has type|
|000007e0| 64 20 69 6e 2e 09 41 6c | 73 6f 2c 09 69 66 20 74 |d in..Al|so,.if t|
|000007f0| 68 65 20 75 73 65 72 20 | 68 61 73 20 74 79 70 65 |he user |has type|
|00000800| 64 0d 09 2f 2f 20 69 6e | 20 6f 75 74 20 6f 66 20 |d..// in| out of |
|00000810| 72 61 6e 67 65 20 6e 75 | 6d 62 65 72 73 2c 09 63 |range nu|mbers,.c|
|00000820| 6f 72 72 65 63 74 20 74 | 68 65 6d 2e 0d 09 2f 2f |orrect t|hem...//|
|00000830| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000840| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000850| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000860| 2d 2d 2d 0d 09 67 65 74 | 54 61 72 67 65 74 54 6f |---..get|TargetTo|
|00000870| 74 61 6c 73 28 29 3b 0d | 09 0d 09 2f 2f 2d 2d 2d |tals();.|...//---|
|00000880| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00000890| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000008a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000008b0| 0d 09 2f 2f 09 49 20 61 | 6d 20 6e 6f 74 20 73 75 |..//.I a|m not su|
|000008c0| 72 65 20 61 74 20 74 68 | 69 73 20 70 6f 69 6e 74 |re at th|is point|
|000008d0| 20 69 66 20 79 6f 75 20 | 77 69 6c 6c 20 77 61 6e | if you |will wan|
|000008e0| 74 20 74 6f 0d 09 2f 2f | 09 69 6e 69 74 69 61 6c |t to..//|.initial|
|000008f0| 69 7a 65 20 74 68 65 20 | 66 69 65 6c 64 73 20 69 |ize the |fields i|
|00000900| 6e 20 74 68 65 20 66 50 | 68 61 73 65 49 6e 66 6f |n the fP|haseInfo|
|00000910| 20 72 65 63 6f 72 64 73 | 0d 09 2f 2f 09 6f 74 68 | records|..//.oth|
|00000920| 65 72 20 74 68 61 6e 20 | 74 68 65 20 74 6f 74 61 |er than |the tota|
|00000930| 6c 73 20 77 68 69 63 68 | 20 63 6f 6d 65 20 66 72 |ls which| come fr|
|00000940| 6f 6d 20 74 68 65 20 75 | 73 65 72 73 0d 09 2f 2f |om the u|sers..//|
|00000950| 09 74 65 78 74 20 62 6f | 78 65 73 2e 09 49 66 20 |.text bo|xes..If |
|00000960| 74 68 65 20 6f 74 68 65 | 72 20 66 69 65 6c 64 73 |the othe|r fields|
|00000970| 20 6e 65 65 64 0d 09 2f | 2f 09 69 6e 69 74 69 61 | need../|/.initia|
|00000980| 6c 69 7a 69 6e 67 2c 09 | 77 65 20 64 6f 20 69 74 |lizing,.|we do it|
|00000990| 20 68 65 72 65 2e 09 09 | 09 0d 09 2f 2f 2d 2d 2d | here...|...//---|
|000009a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000009d0| 0d 09 66 6f 72 20 28 69 | 6e 64 65 78 20 3d 20 6b |..for (i|ndex = k|
|000009e0| 4d 69 6e 50 68 61 73 65 | 3b 09 69 6e 64 65 78 20 |MinPhase|;.index |
|000009f0| 3c 3d 20 6b 4d 61 78 50 | 68 61 73 65 3b 20 69 6e |<= kMaxP|hase; in|
|00000a00| 64 65 78 2b 2b 29 20 7b | 0d 09 09 66 50 68 61 73 |dex++) {|...fPhas|
|00000a10| 65 49 6e 66 6f 5b 69 6e | 64 65 78 5d 2e 64 69 72 |eInfo[in|dex].dir|
|00000a20| 74 79 20 3d 20 46 41 4c | 53 45 3b 0d 23 69 66 64 |ty = FAL|SE;.#ifd|
|00000a30| 65 66 20 5f 5f 4d 57 45 | 52 4b 53 5f 5f 0d 09 09 |ef __MWE|RKS__...|
|00000a40| 66 50 68 61 73 65 49 6e | 66 6f 5b 69 6e 64 65 78 |fPhaseIn|fo[index|
|00000a50| 5d 2e 66 69 6e 69 73 68 | 65 64 20 3d 20 46 41 4c |].finish|ed = FAL|
|00000a60| 53 45 3b 0d 23 65 6e 64 | 69 66 0d 09 09 66 50 68 |SE;.#end|if...fPh|
|00000a70| 61 73 65 49 6e 66 6f 5b | 69 6e 64 65 78 5d 2e 63 |aseInfo[|index].c|
|00000a80| 6f 6d 6d 69 74 74 65 64 | 20 3d 20 30 3b 0d 09 09 |ommitted| = 0;...|
|00000a90| 66 50 68 61 73 65 49 6e | 66 6f 5b 69 6e 64 65 78 |fPhaseIn|fo[index|
|00000aa0| 5d 2e 64 6f 6e 65 20 3d | 20 30 3b 0d 09 09 66 50 |].done =| 0;...fP|
|00000ab0| 68 61 73 65 49 6e 66 6f | 5b 69 6e 64 65 78 5d 2e |haseInfo|[index].|
|00000ac0| 64 65 6c 74 61 20 3d 20 | 30 3b 0d 09 09 66 50 68 |delta = |0;...fPh|
|00000ad0| 61 73 65 49 6e 66 6f 5b | 69 6e 64 65 78 5d 2e 73 |aseInfo[|index].s|
|00000ae0| 6f 46 61 72 20 3d 20 30 | 3b 0d 23 69 66 64 65 66 |oFar = 0|;.#ifdef|
|00000af0| 20 71 4e 65 6f 54 68 72 | 65 61 64 73 0d 09 09 66 | qNeoThr|eads...f|
|00000b00| 50 68 61 73 65 49 6e 66 | 6f 5b 69 6e 64 65 78 5d |PhaseInf|o[index]|
|00000b10| 2e 74 68 72 65 61 64 43 | 6f 75 6e 74 20 3d 20 64 |.threadC|ount = d|
|00000b20| 65 66 61 75 6c 74 5f 74 | 68 72 65 61 64 73 5b 69 |efault_t|hreads[i|
|00000b30| 6e 64 65 78 5d 3b 0d 23 | 65 6e 64 69 66 0d 09 7d |ndex];.#|endif..}|
|00000b40| 0d 0d 09 69 66 20 28 66 | 50 68 61 73 65 49 6e 66 |...if (f|PhaseInf|
|00000b50| 6f 5b 6b 49 6e 73 65 72 | 74 5d 2e 64 65 6c 74 61 |o[kInser|t].delta|
|00000b60| 20 3c 20 66 50 68 61 73 | 65 49 6e 66 6f 5b 6b 49 | < fPhas|eInfo[kI|
|00000b70| 6e 73 65 72 74 5d 2e 74 | 61 72 67 65 74 29 0d 09 |nsert].t|arget)..|
|00000b80| 09 66 50 68 61 73 65 20 | 3d 20 6b 4d 69 6e 50 68 |.fPhase |= kMinPh|
|00000b90| 61 73 65 3b 0d 09 65 6c | 73 65 0d 09 09 66 50 68 |ase;..el|se...fPh|
|00000ba0| 61 73 65 20 3d 20 6b 52 | 61 6e 64 6f 6d 6c 79 3b |ase = kR|andomly;|
|00000bb0| 0d 0d 09 66 44 69 72 74 | 79 20 3d 20 46 41 4c 53 |...fDirt|y = FALS|
|00000bc0| 45 3b 0d 09 66 53 74 61 | 74 65 20 3d 20 6b 53 74 |E;..fSta|te = kSt|
|00000bd0| 61 72 74 3b 0d 09 66 52 | 65 66 72 65 73 68 20 3d |art;..fR|efresh =|
|00000be0| 20 54 52 55 45 3b 0d 0d | 09 2f 2f 20 4a 75 73 74 | TRUE;..|.// Just|
|00000bf0| 20 74 6f 20 6d 61 6b 65 | 20 73 75 72 65 20 74 68 | to make| sure th|
|00000c00| 61 74 20 77 65 20 67 65 | 74 20 6d 6f 72 65 20 72 |at we ge|t more r|
|00000c10| 61 6e 64 6f 6d 20 72 65 | 73 75 6c 74 73 2e 0d 09 |andom re|sults...|
|00000c20| 73 72 61 6e 64 28 28 75 | 6e 73 69 67 6e 65 64 20 |srand((u|nsigned |
|00000c30| 69 6e 74 29 63 6c 6f 63 | 6b 28 29 29 3b 0d 0d 09 |int)cloc|k());...|
|00000c40| 2f 2f 20 6d 65 61 73 75 | 72 65 20 54 69 6d 65 20 |// measu|re Time |
|00000c50| 4d 61 6e 61 67 65 72 20 | 6f 76 65 72 68 65 61 64 |Manager |overhead|
|00000c60| 0d 09 74 69 6d 65 72 2e | 74 6d 41 64 64 72 09 09 |..timer.|tmAddr..|
|00000c70| 3d 20 4e 55 4c 4c 3b 0d | 09 74 69 6d 65 72 2e 74 |= NULL;.|.timer.t|
|00000c80| 6d 43 6f 75 6e 74 09 09 | 3d 20 30 3b 0d 09 74 69 |mCount..|= 0;..ti|
|00000c90| 6d 65 72 2e 74 6d 57 61 | 6b 65 55 70 09 09 3d 20 |mer.tmWa|keUp..= |
|00000ca0| 30 3b 0d 09 74 69 6d 65 | 72 2e 74 6d 52 65 73 65 |0;..time|r.tmRese|
|00000cb0| 72 76 65 64 09 3d 20 30 | 3b 0d 09 0d 09 66 6f 72 |rved.= 0|;....for|
|00000cc0| 20 28 69 6e 64 65 78 20 | 3d 20 30 3b 20 69 6e 64 | (index |= 0; ind|
|00000cd0| 65 78 20 3c 20 31 30 30 | 3b 20 69 6e 64 65 78 2b |ex < 100|; index+|
|00000ce0| 2b 29 20 7b 0d 09 09 49 | 6e 73 54 69 6d 65 28 28 |+) {...I|nsTime((|
|00000cf0| 51 45 6c 65 6d 50 74 72 | 29 26 74 69 6d 65 72 29 |QElemPtr|)&timer)|
|00000d00| 3b 0d 09 09 50 72 69 6d | 65 54 69 6d 65 28 28 51 |;...Prim|eTime((Q|
|00000d10| 45 6c 65 6d 50 74 72 29 | 26 74 69 6d 65 72 2c 20 |ElemPtr)|&timer, |
|00000d20| 6b 33 30 4d 69 63 72 6f | 4d 69 6e 75 74 65 73 29 |k30Micro|Minutes)|
|00000d30| 3b 0d 09 09 52 6d 76 54 | 69 6d 65 28 28 51 45 6c |;...RmvT|ime((QEl|
|00000d40| 65 6d 50 74 72 29 26 74 | 69 6d 65 72 29 3b 0d 09 |emPtr)&t|imer);..|
|00000d50| 09 0d 09 09 69 66 20 28 | 74 69 6d 65 72 2e 74 6d |....if (|timer.tm|
|00000d60| 43 6f 75 6e 74 20 3e 20 | 30 29 0d 09 09 09 2f 2f |Count > |0)....//|
|00000d70| 20 6d 69 6c 6c 69 73 65 | 63 6f 6e 64 73 0d 09 09 | millise|conds...|
|00000d80| 09 64 65 6c 61 79 20 2b | 3d 20 2d 28 6b 33 30 4d |.delay +|= -(k30M|
|00000d90| 69 63 72 6f 4d 69 6e 75 | 74 65 73 20 2b 20 74 69 |icroMinu|tes + ti|
|00000da0| 6d 65 72 2e 74 6d 43 6f | 75 6e 74 20 2a 20 31 30 |mer.tmCo|unt * 10|
|00000db0| 30 30 29 3b 0d 09 09 65 | 6c 73 65 0d 09 09 09 2f |00);...e|lse..../|
|00000dc0| 2f 20 6e 65 67 61 74 65 | 64 20 6d 69 63 72 6f 73 |/ negate|d micros|
|00000dd0| 65 63 6f 6e 64 73 0d 09 | 09 09 64 65 6c 61 79 20 |econds..|..delay |
|00000de0| 2b 3d 20 2d 28 6b 33 30 | 4d 69 63 72 6f 4d 69 6e |+= -(k30|MicroMin|
|00000df0| 75 74 65 73 20 2d 20 74 | 69 6d 65 72 2e 74 6d 43 |utes - t|imer.tmC|
|00000e00| 6f 75 6e 74 29 3b 0d 09 | 7d 0d 09 0d 09 2f 2f 20 |ount);..|}....// |
|00000e10| 63 6f 6d 70 75 74 65 20 | 61 76 65 72 61 67 65 20 |compute |average |
|00000e20| 6f 76 65 72 68 65 61 64 | 0d 09 67 4c 6f 6f 70 4f |overhead|..gLoopO|
|00000e30| 76 65 72 68 65 61 64 20 | 3d 20 64 65 6c 61 79 20 |verhead |= delay |
|00000e40| 2f 20 31 30 30 3b 0d 0d | 23 69 66 64 65 66 20 54 |/ 100;..|#ifdef T|
|00000e50| 48 49 4e 4b 5f 43 50 4c | 55 53 0d 09 63 6f 6e 73 |HINK_CPL|US..cons|
|00000e60| 6f 6c 65 5f 6f 70 74 69 | 6f 6e 73 2e 6e 72 6f 77 |ole_opti|ons.nrow|
|00000e70| 73 20 3d 20 35 3b 0d 09 | 63 6f 6e 73 6f 6c 65 5f |s = 5;..|console_|
|00000e80| 6f 70 74 69 6f 6e 73 2e | 6e 63 6f 6c 73 20 3d 20 |options.|ncols = |
|00000e90| 39 30 3b 0d 09 4e 65 6f | 42 6c 6f 63 6b 4d 6f 76 |90;..Neo|BlockMov|
|00000ea0| 65 28 22 5c 70 4e 65 6f | 41 63 63 65 73 73 22 2c |e("\pNeo|Access",|
|00000eb0| 20 63 6f 6e 73 6f 6c 65 | 5f 6f 70 74 69 6f 6e 73 | console|_options|
|00000ec0| 2e 74 69 74 6c 65 2c 20 | 31 30 29 3b 0d 09 63 73 |.title, |10);..cs|
|00000ed0| 68 6f 77 28 73 74 64 6f | 75 74 29 3b 0d 09 63 67 |how(stdo|ut);..cg|
|00000ee0| 6f 74 6f 78 79 28 31 2c | 20 31 2c 20 73 74 64 6f |otoxy(1,| 1, stdo|
|00000ef0| 75 74 29 3b 0d 23 65 6e | 64 69 66 0d 23 69 66 20 |ut);.#en|dif.#if |
|00000f00| 5f 5f 4d 57 45 52 4b 53 | 5f 5f 0d 09 53 65 74 53 |__MWERKS|__..SetS|
|00000f10| 49 4f 55 58 42 75 66 66 | 65 72 4d 6f 64 65 28 53 |IOUXBuff|erMode(S|
|00000f20| 49 4f 55 58 4e 6f 42 75 | 66 66 65 72 69 6e 67 29 |IOUXNoBu|ffering)|
|00000f30| 3b 0d 23 65 6e 64 69 66 | 0d 0d 09 2f 2f 20 41 64 |;.#endif|...// Ad|
|00000f40| 64 20 43 46 69 6c 6c 65 | 72 20 63 6c 61 73 73 20 |d CFille|r class |
|00000f50| 74 6f 20 74 68 65 20 6d | 65 74 61 63 6c 61 73 73 |to the m|etaclass|
|00000f60| 20 74 61 62 6c 65 0d 09 | 6e 65 77 20 43 4e 65 6f | table..|new CNeo|
|00000f70| 4d 65 74 61 43 6c 61 73 | 73 28 6b 46 69 6c 6c 65 |MetaClas|s(kFille|
|00000f80| 72 49 44 2c 20 6b 4e 65 | 6f 50 65 72 73 69 73 74 |rID, kNe|oPersist|
|00000f90| 49 44 2c 20 6b 46 69 6c | 6c 65 72 4e 61 6d 65 2c |ID, kFil|lerName,|
|00000fa0| 20 43 46 69 6c 6c 65 72 | 3a 3a 4e 65 77 29 3b 0d | CFiller|::New);.|
|00000fb0| 0d 09 2f 2f 20 42 6f 75 | 6e 64 20 74 68 65 20 64 |..// Bou|nd the d|
|00000fc0| 65 66 61 75 6c 74 20 73 | 69 7a 65 20 6f 66 20 74 |efault s|ize of t|
|00000fd0| 68 65 20 4e 65 6f 41 63 | 63 65 73 73 20 6f 62 6a |he NeoAc|cess obj|
|00000fe0| 65 63 74 20 63 61 63 68 | 65 20 74 6f 20 62 65 20 |ect cach|e to be |
|00000ff0| 33 2f 34 20 6f 66 20 66 | 72 65 65 20 6d 65 6d 6f |3/4 of f|ree memo|
|00001000| 72 79 0d 09 43 4e 65 6f | 50 65 72 73 69 73 74 3a |ry..CNeo|Persist:|
|00001010| 3a 46 43 61 63 68 65 53 | 69 7a 65 20 3d 20 28 28 |:FCacheS|ize = ((|
|00001020| 46 72 65 65 4d 65 6d 28 | 29 20 2f 20 34 29 20 2a |FreeMem(|) / 4) *|
|00001030| 20 33 29 3b 0d 0d 09 73 | 65 74 53 74 61 74 65 28 | 3);...s|etState(|
|00001040| 6b 53 74 61 72 74 29 3b | 0d 7d 0d 0d 23 70 72 61 |kStart);|.}..#pra|
|00001050| 67 6d 61 20 73 65 67 6d | 65 6e 74 20 4e 65 6f 44 |gma segm|ent NeoD|
|00001060| 65 73 74 72 6f 79 0d 43 | 53 74 61 6e 64 41 70 70 |estroy.C|StandApp|
|00001070| 3a 3a 7e 43 53 74 61 6e | 64 41 70 70 28 76 6f 69 |::~CStan|dApp(voi|
|00001080| 64 29 0d 7b 0d 23 69 66 | 64 65 66 20 71 4e 65 6f |d).{.#if|def qNeo|
|00001090| 54 68 72 65 61 64 73 0d | 09 6b 69 6c 6c 54 68 72 |Threads.|.killThr|
|000010a0| 65 61 64 73 28 29 3b 0d | 23 65 6e 64 69 66 0d 0d |eads();.|#endif..|
|000010b0| 09 69 66 20 28 67 4e 65 | 6f 44 61 74 61 62 61 73 |.if (gNe|oDatabas|
|000010c0| 65 29 20 7b 0d 09 09 67 | 4e 65 6f 44 61 74 61 62 |e) {...g|NeoDatab|
|000010d0| 61 73 65 2d 3e 63 6c 6f | 73 65 28 29 3b 0d 09 09 |ase->clo|se();...|
|000010e0| 67 4e 65 6f 44 61 74 61 | 62 61 73 65 20 3d 20 6e |gNeoData|base = n|
|000010f0| 69 6c 3b 0d 09 7d 0d 7d | 0d 0d 76 6f 69 64 20 43 |il;..}.}|..void C|
|00001100| 53 74 61 6e 64 41 70 70 | 3a 3a 73 65 74 50 68 61 |StandApp|::setPha|
|00001110| 73 65 28 63 6f 6e 73 74 | 20 73 68 6f 72 74 20 61 |se(const| short a|
|00001120| 50 68 61 73 65 29 0d 7b | 0d 23 69 66 64 65 66 20 |Phase).{|.#ifdef |
|00001130| 71 4e 65 6f 54 68 72 65 | 61 64 73 0d 09 73 68 6f |qNeoThre|ads..sho|
|00001140| 72 74 09 69 6e 64 65 78 | 3b 0d 09 73 68 6f 72 74 |rt.index|;..short|
|00001150| 09 63 6f 75 6e 74 3b 0d | 0d 09 69 66 20 28 61 50 |.count;.|..if (aP|
|00001160| 68 61 73 65 20 3e 3d 20 | 6b 4d 69 6e 50 68 61 73 |hase >= |kMinPhas|
|00001170| 65 20 26 26 0d 09 09 61 | 50 68 61 73 65 20 3c 3d |e &&...a|Phase <=|
|00001180| 20 6b 4d 61 78 50 68 61 | 73 65 29 0d 09 09 63 6f | kMaxPha|se)...co|
|00001190| 75 6e 74 20 3d 20 66 50 | 68 61 73 65 49 6e 66 6f |unt = fP|haseInfo|
|000011a0| 5b 61 50 68 61 73 65 5d | 2e 74 68 72 65 61 64 43 |[aPhase]|.threadC|
|000011b0| 6f 75 6e 74 3b 0d 09 65 | 6c 73 65 20 7b 0d 09 09 |ount;..e|lse {...|
|000011c0| 69 66 20 28 66 49 74 65 | 72 61 74 6f 72 29 20 7b |if (fIte|rator) {|
|000011d0| 0d 09 09 09 64 65 6c 65 | 74 65 20 66 49 74 65 72 |....dele|te fIter|
|000011e0| 61 74 6f 72 3b 0d 09 09 | 09 66 49 74 65 72 61 74 |ator;...|.fIterat|
|000011f0| 6f 72 20 3d 20 6e 69 6c | 3b 0d 09 09 7d 0d 09 09 |or = nil|;...}...|
|00001200| 63 6f 75 6e 74 20 3d 20 | 30 3b 0d 09 7d 0d 0d 09 |count = |0;..}...|
|00001210| 66 6f 72 20 28 69 6e 64 | 65 78 20 3d 20 30 3b 20 |for (ind|ex = 0; |
|00001220| 69 6e 64 65 78 20 3c 20 | 63 6f 75 6e 74 3b 20 69 |index < |count; i|
|00001230| 6e 64 65 78 2b 2b 29 20 | 7b 0d 09 09 66 54 68 72 |ndex++) |{...fThr|
|00001240| 65 61 64 49 6e 66 6f 5b | 69 6e 64 65 78 5d 2e 70 |eadInfo[|index].p|
|00001250| 68 61 73 65 20 3d 20 61 | 50 68 61 73 65 3b 0d 09 |hase = a|Phase;..|
|00001260| 09 66 54 68 72 65 61 64 | 49 6e 66 6f 5b 69 6e 64 |.fThread|Info[ind|
|00001270| 65 78 5d 2e 73 74 61 74 | 65 20 3d 20 6b 41 6c 69 |ex].stat|e = kAli|
|00001280| 76 65 3b 0d 09 09 69 66 | 20 28 69 6e 64 65 78 20 |ve;...if| (index |
|00001290| 3e 3d 20 66 54 68 72 65 | 61 64 43 6f 75 6e 74 29 |>= fThre|adCount)|
|000012a0| 20 7b 0d 09 09 09 66 54 | 68 72 65 61 64 49 6e 66 | {....fT|hreadInf|
|000012b0| 6f 5b 69 6e 64 65 78 5d | 2e 74 68 72 65 61 64 20 |o[index]|.thread |
|000012c0| 3d 20 6e 65 77 20 43 42 | 65 6e 63 68 54 68 72 65 |= new CB|enchThre|
|000012d0| 61 64 28 26 66 54 68 72 | 65 61 64 49 6e 66 6f 5b |ad(&fThr|eadInfo[|
|000012e0| 69 6e 64 65 78 5d 29 3b | 0d 09 09 09 66 54 68 72 |index]);|....fThr|
|000012f0| 65 61 64 43 6f 75 6e 74 | 2b 2b 3b 0d 09 09 09 66 |eadCount|++;....f|
|00001300| 54 68 72 65 61 64 49 6e | 66 6f 5b 69 6e 64 65 78 |ThreadIn|fo[index|
|00001310| 5d 2e 74 68 72 65 61 64 | 2d 3e 72 65 73 75 6d 65 |].thread|->resume|
|00001320| 28 29 3b 0d 09 09 7d 0d | 09 7d 0d 0d 09 66 6f 72 |();...}.|.}...for|
|00001330| 20 28 69 6e 64 65 78 20 | 3d 20 66 54 68 72 65 61 | (index |= fThrea|
|00001340| 64 43 6f 75 6e 74 3b 20 | 69 6e 64 65 78 20 3e 20 |dCount; |index > |
|00001350| 63 6f 75 6e 74 3b 20 69 | 6e 64 65 78 2d 2d 29 0d |count; i|ndex--).|
|00001360| 09 09 66 54 68 72 65 61 | 64 49 6e 66 6f 5b 69 6e |..fThrea|dInfo[in|
|00001370| 64 65 78 5d 2e 73 74 61 | 74 65 20 3d 20 6b 44 69 |dex].sta|te = kDi|
|00001380| 65 3b 0d 23 65 6e 64 69 | 66 0d 0d 09 66 50 68 61 |e;.#endi|f...fPha|
|00001390| 73 65 20 3d 20 61 50 68 | 61 73 65 3b 0d 7d 0d 0d |se = aPh|ase;.}..|
|000013a0| 76 6f 69 64 20 43 53 74 | 61 6e 64 41 70 70 3a 3a |void CSt|andApp::|
|000013b0| 73 65 74 53 74 61 74 65 | 28 63 6f 6e 73 74 20 42 |setState|(const B|
|000013c0| 6f 6f 6c 65 61 6e 20 61 | 53 74 61 74 65 29 0d 7b |oolean a|State).{|
|000013d0| 0d 09 73 68 6f 72 74 09 | 69 6e 64 65 78 3b 0d 09 |..short.|index;..|
|000013e0| 73 68 6f 72 74 09 70 68 | 61 73 65 3b 0d 0d 09 69 |short.ph|ase;...i|
|000013f0| 66 20 28 61 53 74 61 74 | 65 20 3d 3d 20 6b 53 74 |f (aStat|e == kSt|
|00001400| 6f 70 29 20 7b 0d 23 69 | 66 64 65 66 20 71 4e 65 |op) {.#i|fdef qNe|
|00001410| 6f 54 68 72 65 61 64 73 | 0d 09 09 6b 69 6c 6c 54 |oThreads|...killT|
|00001420| 68 72 65 61 64 73 28 29 | 3b 0d 23 65 6e 64 69 66 |hreads()|;.#endif|
|00001430| 0d 09 09 70 68 61 73 65 | 20 3d 20 6b 4e 6f 50 68 |...phase| = kNoPh|
|00001440| 61 73 65 3b 0d 09 7d 0d | 09 65 6c 73 65 20 7b 0d |ase;..}.|.else {.|
|00001450| 09 09 66 6f 72 20 28 69 | 6e 64 65 78 20 3d 20 6b |..for (i|ndex = k|
|00001460| 4d 69 6e 50 68 61 73 65 | 3b 20 20 69 6e 64 65 78 |MinPhase|; index|
|00001470| 20 3c 3d 20 6b 4d 61 78 | 50 68 61 73 65 3b 20 69 | <= kMax|Phase; i|
|00001480| 6e 64 65 78 2b 2b 29 20 | 7b 0d 23 69 66 20 5f 5f |ndex++) |{.#if __|
|00001490| 4d 57 45 52 4b 53 5f 5f | 0d 09 09 09 66 50 68 61 |MWERKS__|....fPha|
|000014a0| 73 65 49 6e 66 6f 5b 69 | 6e 64 65 78 5d 2e 66 69 |seInfo[i|ndex].fi|
|000014b0| 6e 69 73 68 65 64 20 3d | 20 46 41 4c 53 45 3b 0d |nished =| FALSE;.|
|000014c0| 23 65 6e 64 69 66 0d 09 | 09 09 66 50 68 61 73 65 |#endif..|..fPhase|
|000014d0| 49 6e 66 6f 5b 69 6e 64 | 65 78 5d 2e 64 6f 6e 65 |Info[ind|ex].done|
|000014e0| 20 3d 20 30 3b 0d 09 09 | 09 66 50 68 61 73 65 49 | = 0;...|.fPhaseI|
|000014f0| 6e 66 6f 5b 69 6e 64 65 | 78 5d 2e 64 65 6c 74 61 |nfo[inde|x].delta|
|00001500| 20 3d 20 30 3b 0d 09 09 | 09 66 50 68 61 73 65 49 | = 0;...|.fPhaseI|
|00001510| 6e 66 6f 5b 69 6e 64 65 | 78 5d 2e 63 6f 6d 6d 69 |nfo[inde|x].commi|
|00001520| 74 74 65 64 20 3d 20 30 | 3b 0d 09 09 09 66 50 68 |tted = 0|;....fPh|
|00001530| 61 73 65 49 6e 66 6f 5b | 69 6e 64 65 78 5d 2e 73 |aseInfo[|index].s|
|00001540| 6f 46 61 72 20 3d 20 30 | 3b 0d 09 09 7d 0d 0d 09 |oFar = 0|;...}...|
|00001550| 09 69 66 20 28 66 50 68 | 61 73 65 49 6e 66 6f 5b |.if (fPh|aseInfo[|
|00001560| 6b 49 6e 73 65 72 74 5d | 2e 64 65 6c 74 61 20 3c |kInsert]|.delta <|
|00001570| 20 66 50 68 61 73 65 49 | 6e 66 6f 5b 6b 49 6e 73 | fPhaseI|nfo[kIns|
|00001580| 65 72 74 5d 2e 74 61 72 | 67 65 74 29 0d 09 09 09 |ert].tar|get)....|
|00001590| 70 68 61 73 65 20 3d 20 | 6b 4d 69 6e 50 68 61 73 |phase = |kMinPhas|
|000015a0| 65 3b 0d 09 09 65 6c 73 | 65 0d 09 09 09 70 68 61 |e;...els|e....pha|
|000015b0| 73 65 20 3d 20 6b 52 61 | 6e 64 6f 6d 6c 79 3b 0d |se = kRa|ndomly;.|
|000015c0| 09 7d 0d 09 66 53 74 61 | 74 65 20 3d 20 61 53 74 |.}..fSta|te = aSt|
|000015d0| 61 74 65 3b 0d 0d 09 73 | 65 74 50 68 61 73 65 28 |ate;...s|etPhase(|
|000015e0| 70 68 61 73 65 29 3b 0d | 7d 0d 0d 2f 2a 2a 2a 2a |phase);.|}../****|
|000015f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001600| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001610| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001620| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001630| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 0d 20 73 70 65 6e |********|**. spen|
|00001640| 64 54 69 6d 65 0d 20 2a | 2a 2a 2a 2a 2a 2a 2a 2a |dTime. *|********|
|00001650| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001660| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001670| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001680| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001690| 2a 2a 2a 2a 2a 2f 0d 76 | 6f 69 64 20 43 53 74 61 |*****/.v|oid CSta|
|000016a0| 6e 64 41 70 70 3a 3a 64 | 6f 43 68 6f 72 65 73 28 |ndApp::d|oChores(|
|000016b0| 76 6f 69 64 29 0d 7b 0d | 09 73 68 6f 72 74 09 09 |void).{.|.short..|
|000016c0| 09 69 6e 64 65 78 3b 0d | 09 6c 6f 6e 67 09 09 09 |.index;.|.long...|
|000016d0| 63 6f 75 6e 74 3b 0d 09 | 6c 6f 6e 67 09 09 09 6c |count;..|long...l|
|000016e0| 6f 6f 70 73 09 09 3d 20 | 30 3b 0d 09 43 4e 65 6f |oops..= |0;..CNeo|
|000016f0| 44 61 74 61 62 61 73 65 | 20 2a 09 64 61 74 61 62 |Database| *.datab|
|00001700| 61 73 65 09 3d 20 67 65 | 74 44 61 74 61 62 61 73 |ase.= ge|tDatabas|
|00001710| 65 28 29 3b 0d 09 63 68 | 61 72 09 09 09 73 74 72 |e();..ch|ar...str|
|00001720| 69 6e 67 5b 32 30 5d 3b | 0d 0d 09 4e 65 6f 55 73 |ing[20];|...NeoUs|
|00001730| 65 64 28 6c 6f 6f 70 73 | 29 3b 0d 0d 09 69 66 20 |ed(loops|);...if |
|00001740| 28 66 53 74 61 74 65 20 | 3d 3d 20 6b 53 74 61 72 |(fState |== kStar|
|00001750| 74 29 20 7b 0d 23 69 66 | 6e 64 65 66 20 71 4e 65 |t) {.#if|ndef qNe|
|00001760| 6f 54 68 72 65 61 64 73 | 0d 09 09 54 4d 54 61 73 |oThreads|...TMTas|
|00001770| 6b 09 09 09 74 69 6d 65 | 72 3b 0d 0d 09 09 64 6f |k...time|r;....do|
|00001780| 53 6f 6d 65 57 6f 72 6b | 28 66 50 68 61 73 65 2c |SomeWork|(fPhase,|
|00001790| 20 26 74 69 6d 65 72 29 | 3b 0d 23 65 6e 64 69 66 | &timer)|;.#endif|
|000017a0| 0d 0d 09 09 66 6f 72 20 | 28 69 6e 64 65 78 20 3d |....for |(index =|
|000017b0| 20 6b 4d 69 6e 50 68 61 | 73 65 3b 20 69 6e 64 65 | kMinPha|se; inde|
|000017c0| 78 20 3c 3d 20 6b 4d 61 | 78 50 68 61 73 65 3b 20 |x <= kMa|xPhase; |
|000017d0| 69 6e 64 65 78 2b 2b 29 | 20 7b 0d 23 69 66 20 5f |index++)| {.#if _|
|000017e0| 5f 4d 57 45 52 4b 53 5f | 5f 0d 09 09 09 69 66 20 |_MWERKS_|_....if |
|000017f0| 28 66 50 68 61 73 65 49 | 6e 66 6f 5b 69 6e 64 65 |(fPhaseI|nfo[inde|
|00001800| 78 5d 2e 66 69 6e 69 73 | 68 65 64 29 0d 23 65 6e |x].finis|hed).#en|
|00001810| 64 69 66 0d 09 09 09 69 | 66 20 28 66 50 68 61 73 |dif....i|f (fPhas|
|00001820| 65 49 6e 66 6f 5b 69 6e | 64 65 78 5d 2e 64 69 72 |eInfo[in|dex].dir|
|00001830| 74 79 29 20 7b 0d 23 69 | 66 64 65 66 20 54 48 49 |ty) {.#i|fdef THI|
|00001840| 4e 4b 5f 43 50 4c 55 53 | 0d 09 09 09 09 63 67 6f |NK_CPLUS|.....cgo|
|00001850| 74 6f 78 79 28 31 2c 20 | 69 6e 64 65 78 20 2b 31 |toxy(1, |index +1|
|00001860| 2c 20 73 74 64 6f 75 74 | 29 3b 0d 09 09 09 09 63 |, stdout|);.....c|
|00001870| 63 6c 65 6f 6c 28 73 74 | 64 6f 75 74 29 3b 0d 23 |cleol(st|dout);.#|
|00001880| 65 6e 64 69 66 0d 09 09 | 09 09 70 72 69 6e 74 66 |endif...|..printf|
|00001890| 28 22 25 73 20 2d 3e 20 | 22 2c 20 50 68 61 73 65 |("%s -> |", Phase|
|000018a0| 4e 61 6d 65 5b 69 6e 64 | 65 78 5d 29 3b 0d 09 09 |Name[ind|ex]);...|
|000018b0| 09 09 70 72 69 6e 74 66 | 28 22 54 6f 74 61 6c 20 |..printf|("Total |
|000018c0| 3d 20 25 36 6c 64 2c 20 | 22 2c 20 28 66 50 68 61 |= %6ld, |", (fPha|
|000018d0| 73 65 49 6e 66 6f 5b 69 | 6e 64 65 78 5d 2e 64 65 |seInfo[i|ndex].de|
|000018e0| 6c 74 61 20 2b 20 66 50 | 68 61 73 65 49 6e 66 6f |lta + fP|haseInfo|
|000018f0| 5b 69 6e 64 65 78 5d 2e | 64 6f 6e 65 29 29 3b 0d |[index].|done));.|
|00001900| 09 09 09 09 67 65 74 54 | 69 6d 65 28 66 50 68 61 |....getT|ime(fPha|
|00001910| 73 65 49 6e 66 6f 5b 69 | 6e 64 65 78 5d 2e 73 6f |seInfo[i|ndex].so|
|00001920| 46 61 72 20 2f 20 28 66 | 50 68 61 73 65 49 6e 66 |Far / (f|PhaseInf|
|00001930| 6f 5b 69 6e 64 65 78 5d | 2e 64 6f 6e 65 20 3f 20 |o[index]|.done ? |
|00001940| 66 50 68 61 73 65 49 6e | 66 6f 5b 69 6e 64 65 78 |fPhaseIn|fo[index|
|00001950| 5d 2e 64 6f 6e 65 20 3a | 20 31 29 2c 20 73 74 72 |].done :| 1), str|
|00001960| 69 6e 67 29 3b 0d 09 09 | 09 09 63 6f 75 6e 74 20 |ing);...|..count |
|00001970| 3d 20 28 6c 6f 6e 67 29 | 28 28 28 64 6f 75 62 6c |= (long)|(((doubl|
|00001980| 65 29 66 50 68 61 73 65 | 49 6e 66 6f 5b 69 6e 64 |e)fPhase|Info[ind|
|00001990| 65 78 5d 2e 63 6f 6d 6d | 69 74 74 65 64 20 2f 20 |ex].comm|itted / |
|000019a0| 28 64 6f 75 62 6c 65 29 | 28 66 50 68 61 73 65 49 |(double)|(fPhaseI|
|000019b0| 6e 66 6f 5b 69 6e 64 65 | 78 5d 2e 73 6f 46 61 72 |nfo[inde|x].soFar|
|000019c0| 20 3f 20 66 50 68 61 73 | 65 49 6e 66 6f 5b 69 6e | ? fPhas|eInfo[in|
|000019d0| 64 65 78 5d 2e 73 6f 46 | 61 72 20 3a 20 31 29 29 |dex].soF|ar : 1))|
|000019e0| 20 2a 20 31 30 30 30 30 | 30 30 29 3b 0d 09 09 09 | * 10000|00);....|
|000019f0| 09 70 72 69 6e 74 66 28 | 22 4f 62 6a 2e 2f 53 65 |.printf(|"Obj./Se|
|00001a00| 63 2e 20 3d 20 25 36 6c | 64 2c 20 22 2c 20 63 6f |c. = %6l|d, ", co|
|00001a10| 75 6e 74 29 3b 0d 09 09 | 09 09 67 65 74 54 69 6d |unt);...|..getTim|
|00001a20| 65 28 66 50 68 61 73 65 | 49 6e 66 6f 5b 69 6e 64 |e(fPhase|Info[ind|
|00001a30| 65 78 5d 2e 73 6f 46 61 | 72 2c 20 73 74 72 69 6e |ex].soFa|r, strin|
|00001a40| 67 29 3b 0d 09 09 09 09 | 70 72 69 6e 74 66 28 22 |g);.....|printf("|
|00001a50| 54 6f 74 61 6c 20 54 69 | 6d 65 20 3d 20 25 73 22 |Total Ti|me = %s"|
|00001a60| 2c 20 73 74 72 69 6e 67 | 29 3b 0d 09 09 09 09 66 |, string|);.....f|
|00001a70| 50 68 61 73 65 49 6e 66 | 6f 5b 69 6e 64 65 78 5d |PhaseInf|o[index]|
|00001a80| 2e 64 69 72 74 79 20 3d | 20 46 41 4c 53 45 3b 0d |.dirty =| FALSE;.|
|00001a90| 23 69 66 20 5f 5f 4d 57 | 45 52 4b 53 5f 5f 0d 09 |#if __MW|ERKS__..|
|00001aa0| 09 09 09 70 72 69 6e 74 | 66 28 22 5c 6e 22 29 3b |...print|f("\n");|
|00001ab0| 0d 09 09 09 09 66 50 68 | 61 73 65 49 6e 66 6f 5b |.....fPh|aseInfo[|
|00001ac0| 69 6e 64 65 78 5d 2e 66 | 69 6e 69 73 68 65 64 20 |index].f|inished |
|00001ad0| 3d 20 46 41 4c 53 45 3b | 0d 23 65 6e 64 69 66 0d |= FALSE;|.#endif.|
|00001ae0| 09 09 09 7d 0d 09 09 09 | 66 52 65 66 72 65 73 68 |...}....|fRefresh|
|00001af0| 20 3d 20 46 41 4c 53 45 | 3b 0d 09 09 7d 0d 23 69 | = FALSE|;...}.#i|
|00001b00| 66 20 64 65 66 69 6e 65 | 64 28 54 48 49 4e 4b 5f |f define|d(THINK_|
|00001b10| 43 50 4c 55 53 29 20 7c | 7c 20 64 65 66 69 6e 65 |CPLUS) ||| define|
|00001b20| 64 28 5f 5f 4d 57 45 52 | 4b 53 5f 5f 29 0d 09 09 |d(__MWER|KS__)...|
|00001b30| 66 66 6c 75 73 68 28 73 | 74 64 6f 75 74 29 3b 0d |fflush(s|tdout);.|
|00001b40| 23 65 6e 64 69 66 0d 0d | 09 09 69 66 20 28 66 50 |#endif..|..if (fP|
|00001b50| 68 61 73 65 20 3e 20 6b | 4d 61 78 50 68 61 73 65 |hase > k|MaxPhase|
|00001b60| 29 0d 09 09 09 73 65 74 | 53 74 61 74 65 28 6b 53 |)....set|State(kS|
|00001b70| 74 6f 70 29 3b 0d 0d 09 | 09 69 66 20 28 66 50 68 |top);...|.if (fPh|
|00001b80| 61 73 65 20 3d 3d 20 6b | 4e 6f 50 68 61 73 65 20 |ase == k|NoPhase |
|00001b90| 26 26 0d 09 09 09 64 61 | 74 61 62 61 73 65 2d 3e |&&....da|tabase->|
|00001ba0| 69 73 4f 70 65 6e 28 29 | 29 0d 09 09 09 64 61 74 |isOpen()|)....dat|
|00001bb0| 61 62 61 73 65 2d 3e 63 | 6f 6d 6d 69 74 28 54 52 |abase->c|ommit(TR|
|00001bc0| 55 45 29 3b 0d 09 7d 0d | 0d 23 69 66 64 65 66 20 |UE);..}.|.#ifdef |
|00001bd0| 71 4e 65 6f 54 68 72 65 | 61 64 73 0d 09 6c 6f 6f |qNeoThre|ads..loo|
|00001be0| 70 73 20 3d 20 30 3b 0d | 09 77 68 69 6c 65 20 28 |ps = 0;.|.while (|
|00001bf0| 21 66 52 65 66 72 65 73 | 68 29 20 7b 0d 09 09 43 |!fRefres|h) {...C|
|00001c00| 4e 65 6f 54 68 72 65 61 | 64 4e 61 74 69 76 65 3a |NeoThrea|dNative:|
|00001c10| 3a 59 69 65 6c 64 28 29 | 3b 0d 23 69 66 64 65 66 |:Yield()|;.#ifdef|
|00001c20| 20 71 4e 65 6f 44 65 62 | 75 67 0d 09 09 6c 6f 6f | qNeoDeb|ug...loo|
|00001c30| 70 73 2b 2b 3b 0d 09 09 | 69 66 20 28 6c 6f 6f 70 |ps++;...|if (loop|
|00001c40| 73 20 3e 20 31 30 30 30 | 29 20 7b 0d 09 09 09 6c |s > 1000|) {....l|
|00001c50| 6f 6f 70 73 20 3d 20 30 | 3b 0d 09 09 09 62 72 65 |oops = 0|;....bre|
|00001c60| 61 6b 3b 0d 09 09 7d 0d | 23 65 6e 64 69 66 0d 09 |ak;...}.|#endif..|
|00001c70| 7d 0d 23 65 6e 64 69 66 | 0d 7d 0d 0d 2f 2a 2a 2a |}.#endif|.}../***|
|00001c80| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001c90| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001ca0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001cb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001cc0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 0d 20 64 6f 53 |********|***. doS|
|00001cd0| 6f 6d 65 57 6f 72 6b 0d | 20 2a 2a 2a 2a 2a 2a 2a |omeWork.| *******|
|00001ce0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001cf0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d00| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d10| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00001d20| 2a 2a 2a 2a 2a 2a 2a 2f | 0d 76 6f 69 64 20 43 53 |*******/|.void CS|
|00001d30| 74 61 6e 64 41 70 70 3a | 3a 64 6f 53 6f 6d 65 57 |tandApp:|:doSomeW|
|00001d40| 6f 72 6b 28 63 6f 6e 73 | 74 20 73 68 6f 72 74 20 |ork(cons|t short |
|00001d50| 61 50 68 61 73 65 2c 20 | 54 4d 54 61 73 6b 20 2a |aPhase, |TMTask *|
|00001d60| 61 54 69 6d 65 72 29 0d | 7b 0d 09 6c 6f 6e 67 09 |aTimer).|{..long.|
|00001d70| 09 09 64 6f 6e 65 3b 0d | 09 6c 6f 6e 67 09 09 09 |..done;.|.long...|
|00001d80| 49 76 65 44 6f 6e 65 09 | 09 3d 20 30 3b 0d 09 6c |IveDone.|.= 0;..l|
|00001d90| 6f 6e 67 09 09 09 64 65 | 6c 74 61 3b 0d 09 6c 6f |ong...de|lta;..lo|
|00001da0| 6e 67 09 09 09 71 75 61 | 6e 74 75 6d 3b 0d 09 4e |ng...qua|ntum;..N|
|00001db0| 65 6f 49 44 09 09 09 69 | 64 3b 0d 09 43 4e 65 6f |eoID...i|d;..CNeo|
|00001dc0| 50 65 72 73 69 73 74 20 | 2a 09 6f 62 6a 65 63 74 |Persist |*.object|
|00001dd0| 3b 0d 09 43 4e 65 6f 44 | 61 74 61 62 61 73 65 20 |;..CNeoD|atabase |
|00001de0| 2a 09 6f 6c 64 44 61 74 | 61 62 61 73 65 09 3d 20 |*.oldDat|abase.= |
|00001df0| 67 4e 65 6f 44 61 74 61 | 62 61 73 65 3b 0d 09 43 |gNeoData|base;..C|
|00001e00| 4e 65 6f 44 61 74 61 62 | 61 73 65 20 2a 09 64 61 |NeoDatab|ase *.da|
|00001e10| 74 61 62 61 73 65 09 3d | 20 67 65 74 44 61 74 61 |tabase.=| getData|
|00001e20| 62 61 73 65 28 29 3b 0d | 09 54 4d 54 61 73 6b 09 |base();.|.TMTask.|
|00001e30| 09 09 75 70 64 61 74 65 | 54 61 73 6b 3b 0d 0d 23 |..update|Task;..#|
|00001e40| 69 66 64 65 66 20 71 4e | 65 6f 54 68 72 65 61 64 |ifdef qN|eoThread|
|00001e50| 73 0d 09 71 75 61 6e 74 | 75 6d 20 3d 20 35 30 30 |s..quant|um = 500|
|00001e60| 20 2f 20 66 50 68 61 73 | 65 49 6e 66 6f 5b 61 50 | / fPhas|eInfo[aP|
|00001e70| 68 61 73 65 5d 2e 74 68 | 72 65 61 64 43 6f 75 6e |hase].th|readCoun|
|00001e80| 74 3b 0d 23 65 6c 73 65 | 0d 09 71 75 61 6e 74 75 |t;.#else|..quantu|
|00001e90| 6d 20 3d 20 35 30 30 3b | 0d 23 65 6e 64 69 66 0d |m = 500;|.#endif.|
|00001ea0| 09 69 66 20 28 66 50 68 | 61 73 65 49 6e 66 6f 5b |.if (fPh|aseInfo[|
|00001eb0| 61 50 68 61 73 65 5d 2e | 64 65 6c 74 61 20 2b 20 |aPhase].|delta + |
|00001ec0| 66 50 68 61 73 65 49 6e | 66 6f 5b 61 50 68 61 73 |fPhaseIn|fo[aPhas|
|00001ed0| 65 5d 2e 64 6f 6e 65 20 | 3c 20 66 50 68 61 73 65 |e].done |< fPhase|
|00001ee0| 49 6e 66 6f 5b 61 50 68 | 61 73 65 5d 2e 74 61 72 |Info[aPh|ase].tar|
|00001ef0| 67 65 74 29 20 7b 0d 09 | 09 67 4e 65 6f 44 61 74 |get) {..|.gNeoDat|
|00001f00| 61 62 61 73 65 20 3d 20 | 64 61 74 61 62 61 73 65 |abase = |database|
|00001f10| 3b 0d 0d 09 09 75 70 64 | 61 74 65 54 61 73 6b 2e |;....upd|ateTask.|
|00001f20| 74 6d 41 64 64 72 20 3d | 20 6e 69 6c 3b 0d 09 09 |tmAddr =| nil;...|
|00001f30| 75 70 64 61 74 65 54 61 | 73 6b 2e 71 54 79 70 65 |updateTa|sk.qType|
|00001f40| 20 3d 20 30 3b 0d 09 09 | 75 70 64 61 74 65 54 61 | = 0;...|updateTa|
|00001f50| 73 6b 2e 74 6d 43 6f 75 | 6e 74 20 3d 20 30 3b 0d |sk.tmCou|nt = 0;.|
|00001f60| 09 09 75 70 64 61 74 65 | 54 61 73 6b 2e 74 6d 57 |..update|Task.tmW|
|00001f70| 61 6b 65 55 70 20 3d 20 | 30 3b 0d 09 09 75 70 64 |akeUp = |0;...upd|
|00001f80| 61 74 65 54 61 73 6b 2e | 74 6d 52 65 73 65 72 76 |ateTask.|tmReserv|
|00001f90| 65 64 20 3d 20 30 3b 0d | 09 09 49 6e 73 58 54 69 |ed = 0;.|..InsXTi|
|00001fa0| 6d 65 28 28 51 45 6c 65 | 6d 20 2a 29 26 75 70 64 |me((QEle|m *)&upd|
|00001fb0| 61 74 65 54 61 73 6b 29 | 3b 0d 09 09 50 72 69 6d |ateTask)|;...Prim|
|00001fc0| 65 54 69 6d 65 28 28 51 | 45 6c 65 6d 20 2a 29 26 |eTime((Q|Elem *)&|
|00001fd0| 75 70 64 61 74 65 54 61 | 73 6b 2c 20 71 75 61 6e |updateTa|sk, quan|
|00001fe0| 74 75 6d 29 3b 0d 0d 09 | 09 61 54 69 6d 65 72 2d |tum);...|.aTimer-|
|00001ff0| 3e 74 6d 41 64 64 72 20 | 3d 20 6e 69 6c 3b 0d 09 |>tmAddr |= nil;..|
|00002000| 09 61 54 69 6d 65 72 2d | 3e 71 54 79 70 65 20 3d |.aTimer-|>qType =|
|00002010| 20 30 3b 0d 09 09 61 54 | 69 6d 65 72 2d 3e 74 6d | 0;...aT|imer->tm|
|00002020| 43 6f 75 6e 74 20 3d 20 | 30 3b 0d 09 09 61 54 69 |Count = |0;...aTi|
|00002030| 6d 65 72 2d 3e 74 6d 57 | 61 6b 65 55 70 20 3d 20 |mer->tmW|akeUp = |
|00002040| 30 3b 0d 09 09 61 54 69 | 6d 65 72 2d 3e 74 6d 52 |0;...aTi|mer->tmR|
|00002050| 65 73 65 72 76 65 64 20 | 3d 20 30 3b 0d 09 09 49 |eserved |= 0;...I|
|00002060| 6e 73 58 54 69 6d 65 28 | 28 51 45 6c 65 6d 20 2a |nsXTime(|(QElem *|
|00002070| 29 61 54 69 6d 65 72 29 | 3b 0d 09 09 50 72 69 6d |)aTimer)|;...Prim|
|00002080| 65 54 69 6d 65 28 28 51 | 45 6c 65 6d 20 2a 29 61 |eTime((Q|Elem *)a|
|00002090| 54 69 6d 65 72 2c 20 6b | 33 30 4d 69 63 72 6f 4d |Timer, k|30MicroM|
|000020a0| 69 6e 75 74 65 73 29 3b | 0d 09 0d 09 09 77 68 69 |inutes);|.....whi|
|000020b0| 6c 65 20 28 28 75 70 64 | 61 74 65 54 61 73 6b 2e |le ((upd|ateTask.|
|000020c0| 71 54 79 70 65 26 30 78 | 38 30 30 30 29 20 26 26 |qType&0x|8000) &&|
|000020d0| 0d 09 09 09 20 20 20 28 | 66 50 68 61 73 65 49 6e |.... (|fPhaseIn|
|000020e0| 66 6f 5b 61 50 68 61 73 | 65 5d 2e 64 65 6c 74 61 |fo[aPhas|e].delta|
|000020f0| 20 2b 20 66 50 68 61 73 | 65 49 6e 66 6f 5b 61 50 | + fPhas|eInfo[aP|
|00002100| 68 61 73 65 5d 2e 64 6f | 6e 65 20 3c 20 66 50 68 |hase].do|ne < fPh|
|00002110| 61 73 65 49 6e 66 6f 5b | 61 50 68 61 73 65 5d 2e |aseInfo[|aPhase].|
|00002120| 74 61 72 67 65 74 29 29 | 20 7b 0d 09 0d 09 09 09 |target))| {......|
|00002130| 66 50 68 61 73 65 49 6e | 66 6f 5b 61 50 68 61 73 |fPhaseIn|fo[aPhas|
|00002140| 65 5d 2e 64 6f 6e 65 2b | 2b 3b 0d 09 09 09 49 76 |e].done+|+;....Iv|
|00002150| 65 44 6f 6e 65 2b 2b 3b | 0d 0d 09 09 09 73 77 69 |eDone++;|.....swi|
|00002160| 74 63 68 20 28 61 50 68 | 61 73 65 29 20 7b 0d 09 |tch (aPh|ase) {..|
|00002170| 09 09 63 61 73 65 09 6b | 49 6e 73 65 72 74 3a 0d |..case.k|Insert:.|
|00002180| 09 09 09 09 2f 2a 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |..../*--|--------|
|00002190| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000021a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000021b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2a 2f 0d 09 |--------|----*/..|
|000021c0| 09 09 09 2f 2a 20 50 65 | 72 66 6f 72 6d 20 74 68 |.../* Pe|rform th|
|000021d0| 65 20 63 6f 64 65 20 66 | 6f 72 20 72 65 63 6f 72 |e code f|or recor|
|000021e0| 64 20 69 6e 73 65 72 74 | 69 6f 6e 20 73 65 71 75 |d insert|ion sequ|
|000021f0| 65 6e 63 65 20 09 09 2a | 2f 0d 09 09 09 09 2f 2a |ence ..*|/...../*|
|00002200| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002210| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002220| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002230| 2d 2d 2d 2d 2d 2d 2a 2f | 0d 09 09 09 09 6f 62 6a |------*/|.....obj|
|00002240| 65 63 74 20 3d 20 6e 65 | 77 20 43 46 69 6c 6c 65 |ect = ne|w CFille|
|00002250| 72 3b 0d 09 09 09 09 46 | 61 69 6c 4e 49 4c 28 6f |r;.....F|ailNIL(o|
|00002260| 62 6a 65 63 74 29 3b 0d | 09 09 09 09 64 65 6c 74 |bject);.|....delt|
|00002270| 61 20 3d 20 66 50 68 61 | 73 65 49 6e 66 6f 5b 6b |a = fPha|seInfo[k|
|00002280| 49 6e 73 65 72 74 5d 2e | 64 65 6c 74 61 3b 0d 09 |Insert].|delta;..|
|00002290| 09 09 09 64 6f 6e 65 20 | 3d 20 66 50 68 61 73 65 |...done |= fPhase|
|000022a0| 49 6e 66 6f 5b 6b 49 6e | 73 65 72 74 5d 2e 64 6f |Info[kIn|sert].do|
|000022b0| 6e 65 3b 0d 09 09 09 09 | 6f 62 6a 65 63 74 2d 3e |ne;.....|object->|
|000022c0| 66 49 44 20 3d 20 64 65 | 6c 74 61 20 2b 20 64 6f |fID = de|lta + do|
|000022d0| 6e 65 3b 0d 09 09 09 09 | 64 61 74 61 62 61 73 65 |ne;.....|database|
|000022e0| 2d 3e 61 64 64 4f 62 6a | 65 63 74 28 6f 62 6a 65 |->addObj|ect(obje|
|000022f0| 63 74 29 3b 0d 09 09 09 | 09 6f 62 6a 65 63 74 2d |ct);....|.object-|
|00002300| 3e 75 6e 72 65 66 65 72 | 28 29 3b 0d 09 09 09 09 |>unrefer|();.....|
|00002310| 69 66 20 28 64 65 6c 74 | 61 20 2b 20 64 6f 6e 65 |if (delt|a + done|
|00002320| 20 3d 3d 20 66 50 68 61 | 73 65 49 6e 66 6f 5b 6b | == fPha|seInfo[k|
|00002330| 49 6e 73 65 72 74 5d 2e | 74 61 72 67 65 74 29 20 |Insert].|target) |
|00002340| 7b 0d 09 09 09 09 09 69 | 66 20 28 64 61 74 61 62 |{......i|f (datab|
|00002350| 61 73 65 2d 3e 69 73 4f | 70 65 6e 28 29 29 0d 09 |ase->isO|pen())..|
|00002360| 09 09 09 09 09 64 61 74 | 61 62 61 73 65 2d 3e 63 |.....dat|abase->c|
|00002370| 6f 6d 6d 69 74 28 46 41 | 4c 53 45 29 3b 0d 09 09 |ommit(FA|LSE);...|
|00002380| 09 09 7d 0d 09 09 09 09 | 62 72 65 61 6b 3b 0d 0d |..}.....|break;..|
|00002390| 09 09 09 63 61 73 65 09 | 6b 52 61 6e 64 6f 6d 6c |...case.|kRandoml|
|000023a0| 79 3a 0d 09 09 09 09 2f | 2a 2d 2d 2d 2d 2d 2d 2d |y:...../|*-------|
|000023b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000023c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000023d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2a |--------|-------*|
|000023e0| 2f 0d 09 09 09 09 2f 2a | 20 50 65 72 66 6f 72 6d |/...../*| Perform|
|000023f0| 20 74 68 65 20 63 6f 64 | 65 20 66 6f 72 20 72 61 | the cod|e for ra|
|00002400| 6e 64 6f 6d 6c 79 20 73 | 65 61 72 63 68 69 6e 67 |ndomly s|earching|
|00002410| 20 73 65 71 75 65 6e 63 | 65 20 09 2a 2f 0d 09 09 | sequenc|e .*/...|
|00002420| 09 09 2f 2a 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |../*----|--------|
|00002430| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002440| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002450| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2a 2f 0d 09 09 09 |--------|--*/....|
|00002460| 09 69 64 20 3d 20 28 72 | 61 6e 64 28 29 26 30 78 |.id = (r|and()&0x|
|00002470| 37 46 46 46 46 46 46 46 | 29 20 25 20 66 50 68 61 |7FFFFFFF|) % fPha|
|00002480| 73 65 49 6e 66 6f 5b 6b | 49 6e 73 65 72 74 5d 2e |seInfo[k|Insert].|
|00002490| 74 61 72 67 65 74 3b 0d | 09 09 09 09 69 66 20 28 |target;.|....if (|
|000024a0| 21 69 64 29 0d 09 09 09 | 09 09 69 64 20 3d 20 66 |!id)....|..id = f|
|000024b0| 50 68 61 73 65 49 6e 66 | 6f 5b 6b 49 6e 73 65 72 |PhaseInf|o[kInser|
|000024c0| 74 5d 2e 74 61 72 67 65 | 74 20 2f 20 32 3b 0d 09 |t].targe|t / 2;..|
|000024d0| 09 09 09 6f 62 6a 65 63 | 74 20 3d 20 28 43 46 69 |...objec|t = (CFi|
|000024e0| 6c 6c 65 72 20 2a 29 43 | 46 69 6c 6c 65 72 3a 3a |ller *)C|Filler::|
|000024f0| 46 69 6e 64 42 79 49 44 | 28 64 61 74 61 62 61 73 |FindByID|(databas|
|00002500| 65 2c 20 6b 46 69 6c 6c | 65 72 49 44 2c 20 69 64 |e, kFill|erID, id|
|00002510| 2c 20 46 41 4c 53 45 29 | 3b 0d 09 09 09 09 4e 65 |, FALSE)|;.....Ne|
|00002520| 6f 41 73 73 65 72 74 28 | 6f 62 6a 65 63 74 29 3b |oAssert(|object);|
|00002530| 0d 09 09 09 09 6f 62 6a | 65 63 74 2d 3e 75 6e 72 |.....obj|ect->unr|
|00002540| 65 66 65 72 28 29 3b 0d | 09 09 09 09 62 72 65 61 |efer();.|....brea|
|00002550| 6b 3b 0d 0d 09 09 09 63 | 61 73 65 09 6b 53 65 72 |k;.....c|ase.kSer|
|00002560| 69 61 6c 6c 79 3a 0d 09 | 09 09 09 2f 2a 2d 2d 2d |ially:..|.../*---|
|00002570| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002580| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002590| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000025a0| 2d 2d 2d 2a 2f 0d 09 09 | 09 09 2f 2a 20 53 65 72 |---*/...|../* Ser|
|000025b0| 69 61 6c 6c 79 20 69 74 | 65 72 61 74 65 20 6f 76 |ially it|erate ov|
|000025c0| 65 72 20 61 20 63 6c 61 | 73 73 20 6f 66 20 6f 62 |er a cla|ss of ob|
|000025d0| 6a 65 63 74 73 09 09 09 | 09 2a 2f 0d 09 09 09 09 |jects...|.*/.....|
|000025e0| 2f 2a 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |/*------|--------|
|000025f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002600| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002610| 2d 2d 2d 2d 2d 2d 2d 2d | 2a 2f 0d 09 09 09 09 69 |--------|*/.....i|
|00002620| 66 20 28 66 49 74 65 72 | 61 74 6f 72 29 20 7b 0d |f (fIter|ator) {.|
|00002630| 09 09 09 09 09 6f 62 6a | 65 63 74 20 3d 20 66 49 |.....obj|ect = fI|
|00002640| 74 65 72 61 74 6f 72 2d | 3e 6e 65 78 74 4f 62 6a |terator-|>nextObj|
|00002650| 65 63 74 28 29 3b 0d 09 | 09 09 09 09 69 66 20 28 |ect();..|....if (|
|00002660| 21 6f 62 6a 65 63 74 29 | 20 7b 0d 09 09 09 09 09 |!object)| {......|
|00002670| 09 66 49 74 65 72 61 74 | 6f 72 2d 3e 72 65 73 65 |.fIterat|or->rese|
|00002680| 74 28 29 3b 0d 09 09 09 | 09 09 09 6f 62 6a 65 63 |t();....|...objec|
|00002690| 74 20 3d 20 66 49 74 65 | 72 61 74 6f 72 2d 3e 63 |t = fIte|rator->c|
|000026a0| 75 72 72 65 6e 74 4f 62 | 6a 65 63 74 28 29 3b 0d |urrentOb|ject();.|
|000026b0| 09 09 09 09 09 7d 0d 09 | 09 09 09 7d 0d 09 09 09 |.....}..|...}....|
|000026c0| 09 65 6c 73 65 20 7b 0d | 09 09 09 09 09 66 49 74 |.else {.|.....fIt|
|000026d0| 65 72 61 74 6f 72 20 3d | 20 6e 65 77 20 43 4e 65 |erator =| new CNe|
|000026e0| 6f 49 6e 64 65 78 49 74 | 65 72 61 74 6f 72 28 64 |oIndexIt|erator(d|
|000026f0| 61 74 61 62 61 73 65 2c | 20 6b 46 69 6c 6c 65 72 |atabase,| kFiller|
|00002700| 49 44 2c 20 6e 69 6c 2c | 20 46 41 4c 53 45 2c 20 |ID, nil,| FALSE, |
|00002710| 46 41 4c 53 45 29 3b 0d | 09 09 09 09 09 6f 62 6a |FALSE);.|.....obj|
|00002720| 65 63 74 20 3d 20 66 49 | 74 65 72 61 74 6f 72 2d |ect = fI|terator-|
|00002730| 3e 63 75 72 72 65 6e 74 | 4f 62 6a 65 63 74 28 29 |>current|Object()|
|00002740| 3b 0d 09 09 09 09 7d 0d | 09 09 09 09 4e 65 6f 41 |;.....}.|....NeoA|
|00002750| 73 73 65 72 74 28 6f 62 | 6a 65 63 74 29 3b 0d 09 |ssert(ob|ject);..|
|00002760| 09 09 09 62 72 65 61 6b | 3b 0d 0d 09 09 09 63 61 |...break|;.....ca|
|00002770| 73 65 09 6b 43 68 61 6e | 67 65 3a 0d 09 09 09 09 |se.kChan|ge:.....|
|00002780| 2f 2a 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |/*------|--------|
|00002790| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000027a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000027b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2a 2f 0d 09 09 09 09 2f |--------|*/...../|
|000027c0| 2a 20 50 65 72 66 6f 72 | 6d 20 74 68 65 20 63 6f |* Perfor|m the co|
|000027d0| 64 65 20 66 6f 72 20 43 | 68 61 6e 67 65 20 73 65 |de for C|hange se|
|000027e0| 71 75 65 6e 63 65 20 68 | 65 72 65 09 09 09 2a 2f |quence h|ere...*/|
|000027f0| 0d 09 09 09 09 2f 2a 2d | 2d 2d 2d 2d 2d 2d 2d 2d |...../*-|--------|
|00002800| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002810| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002820| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2a 2f 0d |--------|-----*/.|
|00002830| 09 09 09 09 69 66 20 28 | 66 49 74 65 72 61 74 6f |....if (|fIterato|
|00002840| 72 29 20 7b 0d 09 09 09 | 09 09 6f 62 6a 65 63 74 |r) {....|..object|
|00002850| 20 3d 20 66 49 74 65 72 | 61 74 6f 72 2d 3e 6e 65 | = fIter|ator->ne|
|00002860| 78 74 4f 62 6a 65 63 74 | 28 29 3b 0d 09 09 09 09 |xtObject|();.....|
|00002870| 09 69 66 20 28 21 6f 62 | 6a 65 63 74 29 20 7b 0d |.if (!ob|ject) {.|
|00002880| 09 09 09 09 09 09 66 49 | 74 65 72 61 74 6f 72 2d |......fI|terator-|
|00002890| 3e 72 65 73 65 74 28 29 | 3b 0d 09 09 09 09 09 09 |>reset()|;.......|
|000028a0| 6f 62 6a 65 63 74 20 3d | 20 66 49 74 65 72 61 74 |object =| fIterat|
|000028b0| 6f 72 2d 3e 63 75 72 72 | 65 6e 74 4f 62 6a 65 63 |or->curr|entObjec|
|000028c0| 74 28 29 3b 0d 09 09 09 | 09 09 7d 0d 09 09 09 09 |t();....|..}.....|
|000028d0| 7d 0d 09 09 09 09 65 6c | 73 65 20 7b 0d 09 09 09 |}.....el|se {....|
|000028e0| 09 09 66 49 74 65 72 61 | 74 6f 72 20 3d 20 6e 65 |..fItera|tor = ne|
|000028f0| 77 20 43 4e 65 6f 49 6e | 64 65 78 49 74 65 72 61 |w CNeoIn|dexItera|
|00002900| 74 6f 72 28 64 61 74 61 | 62 61 73 65 2c 20 6b 46 |tor(data|base, kF|
|00002910| 69 6c 6c 65 72 49 44 29 | 3b 0d 09 09 09 09 09 6f |illerID)|;......o|
|00002920| 62 6a 65 63 74 20 3d 20 | 66 49 74 65 72 61 74 6f |bject = |fIterato|
|00002930| 72 2d 3e 63 75 72 72 65 | 6e 74 4f 62 6a 65 63 74 |r->curre|ntObject|
|00002940| 28 29 3b 0d 09 09 09 09 | 7d 0d 09 09 09 09 4e 65 |();.....|}.....Ne|
|00002950| 6f 41 73 73 65 72 74 28 | 6f 62 6a 65 63 74 29 3b |oAssert(|object);|
|00002960| 0d 09 09 09 09 6f 62 6a | 65 63 74 2d 3e 61 75 74 |.....obj|ect->aut|
|00002970| 6f 52 65 66 65 72 54 6f | 28 29 3b 0d 09 09 09 09 |oReferTo|();.....|
|00002980| 6f 62 6a 65 63 74 2d 3e | 73 65 74 44 69 72 74 79 |object->|setDirty|
|00002990| 28 29 3b 0d 09 09 09 09 | 6f 62 6a 65 63 74 2d 3e |();.....|object->|
|000029a0| 61 75 74 6f 55 6e 72 65 | 66 65 72 28 29 3b 0d 09 |autoUnre|fer();..|
|000029b0| 09 09 09 64 61 74 61 62 | 61 73 65 2d 3e 73 65 74 |...datab|ase->set|
|000029c0| 44 69 72 74 79 28 29 3b | 0d 09 09 09 09 62 72 65 |Dirty();|.....bre|
|000029d0| 61 6b 3b 0d 0d 09 09 09 | 63 61 73 65 09 6b 44 65 |ak;.....|case.kDe|
|000029e0| 6c 65 74 65 3a 0d 09 09 | 09 09 2f 2a 2d 2d 2d 2d |lete:...|../*----|
|000029f0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002a00| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002a10| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002a20| 2d 2d 2a 2f 0d 09 09 09 | 09 2f 2a 20 50 65 72 66 |--*/....|./* Perf|
|00002a30| 6f 72 6d 20 74 68 65 20 | 63 6f 64 65 20 66 6f 72 |orm the |code for|
|00002a40| 20 44 65 6c 65 74 65 20 | 73 65 71 75 65 6e 63 69 | Delete |sequenci|
|00002a50| 6e 67 20 68 65 72 65 09 | 09 09 2a 2f 0d 09 09 09 |ng here.|..*/....|
|00002a60| 09 2f 2a 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |./*-----|--------|
|00002a70| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002a80| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00002a90| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2a 2f 0d 09 09 09 09 |--------|-*/.....|
|00002aa0| 69 66 20 28 21 66 49 74 | 65 72 61 74 6f 72 29 0d |if (!fIt|erator).|
|00002ab0| 09 09 09 09 09 66 49 74 | 65 72 61 74 6f 72 20 3d |.....fIt|erator =|
|00002ac0| 20 6e 65 77 20 43 4e 65 | 6f 49 6e 64 65 78 49 74 | new CNe|oIndexIt|
|00002ad0| 65 72 61 74 6f 72 28 64 | 61 74 61 62 61 73 65 2c |erator(d|atabase,|
|00002ae0| 20 6b 46 69 6c 6c 65 72 | 49 44 29 3b 0d 09 09 09 | kFiller|ID);....|
|00002af0| 09 6f 62 6a 65 63 74 20 | 3d 20 66 49 74 65 72 61 |.object |= fItera|
|00002b00| 74 6f 72 2d 3e 63 75 72 | 72 65 6e 74 4f 62 6a 65 |tor->cur|rentObje|
|00002b10| 63 74 28 29 3b 0d 09 09 | 09 09 4e 65 6f 41 73 73 |ct();...|..NeoAss|
|00002b20| 65 72 74 28 6f 62 6a 65 | 63 74 29 3b 0d 09 09 09 |ert(obje|ct);....|
|00002b30| 09 6f 62 6a 65 63 74 2d | 3e 61 75 74 6f 52 65 66 |.object-|>autoRef|
|00002b40| 65 72 54 6f 28 29 3b 0d | 09 09 09 09 66 49 74 65 |erTo();.|....fIte|
|00002b50| 72 61 74 6f 72 2d 3e 72 | 65 6d 6f 76 65 43 75 72 |rator->r|emoveCur|
|00002b60| 72 65 6e 74 28 29 3b 0d | 09 09 09 09 6f 62 6a 65 |rent();.|....obje|
|00002b70| 63 74 2d 3e 61 75 74 6f | 55 6e 72 65 66 65 72 28 |ct->auto|Unrefer(|
|00002b80| 29 3b 0d 09 09 09 09 62 | 72 65 61 6b 3b 0d 09 09 |);.....b|reak;...|
|00002b90| 09 7d 0d 09 09 7d 0d 0d | 09 09 69 66 20 28 64 61 |.}...}..|..if (da|
|00002ba0| 74 61 62 61 73 65 2d 3e | 69 73 4f 70 65 6e 28 29 |tabase->|isOpen()|
|00002bb0| 20 26 26 0d 09 09 09 64 | 61 74 61 62 61 73 65 2d | &&....d|atabase-|
|00002bc0| 3e 69 73 44 69 72 74 79 | 28 29 20 26 26 0d 09 09 |>isDirty|() &&...|
|00002bd0| 09 43 4e 65 6f 50 65 72 | 73 69 73 74 3a 3a 46 43 |.CNeoPer|sist::FC|
|00002be0| 61 63 68 65 55 73 65 64 | 20 3e 20 28 43 4e 65 6f |acheUsed| > (CNeo|
|00002bf0| 50 65 72 73 69 73 74 3a | 3a 46 43 61 63 68 65 53 |Persist:|:FCacheS|
|00002c00| 69 7a 65 3e 3e 31 29 29 | 20 7b 0d 09 09 09 64 61 |ize>>1))| {....da|
|00002c10| 74 61 62 61 73 65 2d 3e | 63 6f 6d 6d 69 74 28 46 |tabase->|commit(F|
|00002c20| 41 4c 53 45 29 3b 0d 09 | 09 09 73 65 74 44 69 72 |ALSE);..|..setDir|
|00002c30| 74 79 28 46 41 4c 53 45 | 29 3b 0d 09 09 7d 0d 0d |ty(FALSE|);...}..|
|00002c40| 09 09 52 6d 76 54 69 6d | 65 28 28 51 45 6c 65 6d |..RmvTim|e((QElem|
|00002c50| 20 2a 29 61 54 69 6d 65 | 72 29 3b 0d 09 09 52 6d | *)aTime|r);...Rm|
|00002c60| 76 54 69 6d 65 28 28 51 | 45 6c 65 6d 20 2a 29 26 |vTime((Q|Elem *)&|
|00002c70| 75 70 64 61 74 65 54 61 | 73 6b 29 3b 0d 0d 09 09 |updateTa|sk);....|
|00002c80| 69 66 20 28 61 54 69 6d | 65 72 2d 3e 74 6d 43 6f |if (aTim|er->tmCo|
|00002c90| 75 6e 74 20 3e 20 30 29 | 0d 09 09 09 66 50 68 61 |unt > 0)|....fPha|
|00002ca0| 73 65 49 6e 66 6f 5b 61 | 50 68 61 73 65 5d 2e 73 |seInfo[a|Phase].s|
|00002cb0| 6f 46 61 72 20 2b 3d 20 | 2d 28 6b 33 30 4d 69 63 |oFar += |-(k30Mic|
|00002cc0| 72 6f 4d 69 6e 75 74 65 | 73 20 2b 20 61 54 69 6d |roMinute|s + aTim|
|00002cd0| 65 72 2d 3e 74 6d 43 6f | 75 6e 74 20 2a 20 31 30 |er->tmCo|unt * 10|
|00002ce0| 30 30 29 20 2d 20 67 4c | 6f 6f 70 4f 76 65 72 68 |00) - gL|oopOverh|
|00002cf0| 65 61 64 3b 0d 09 09 65 | 6c 73 65 0d 09 09 09 66 |ead;...e|lse....f|
|00002d00| 50 68 61 73 65 49 6e 66 | 6f 5b 61 50 68 61 73 65 |PhaseInf|o[aPhase|
|00002d10| 5d 2e 73 6f 46 61 72 20 | 2b 3d 20 2d 28 6b 33 30 |].soFar |+= -(k30|
|00002d20| 4d 69 63 72 6f 4d 69 6e | 75 74 65 73 20 2d 20 61 |MicroMin|utes - a|
|00002d30| 54 69 6d 65 72 2d 3e 74 | 6d 43 6f 75 6e 74 29 20 |Timer->t|mCount) |
|00002d40| 2d 20 67 4c 6f 6f 70 4f | 76 65 72 68 65 61 64 3b |- gLoopO|verhead;|
|00002d50| 0d 09 09 66 50 68 61 73 | 65 49 6e 66 6f 5b 61 50 |...fPhas|eInfo[aP|
|00002d60| 68 61 73 65 5d 2e 63 6f | 6d 6d 69 74 74 65 64 20 |hase].co|mmitted |
|00002d70| 2b 3d 20 49 76 65 44 6f | 6e 65 3b 0d 09 09 66 50 |+= IveDo|ne;...fP|
|00002d80| 68 61 73 65 49 6e 66 6f | 5b 61 50 68 61 73 65 5d |haseInfo|[aPhase]|
|00002d90| 2e 64 69 72 74 79 20 3d | 20 54 52 55 45 3b 0d 0d |.dirty =| TRUE;..|
|00002da0| 09 09 67 4e 65 6f 44 61 | 74 61 62 61 73 65 20 3d |..gNeoDa|tabase =|
|00002db0| 20 6f 6c 64 44 61 74 61 | 62 61 73 65 3b 0d 09 7d | oldData|base;..}|
|00002dc0| 0d 09 65 6c 73 65 20 7b | 0d 23 69 66 64 65 66 20 |..else {|.#ifdef |
|00002dd0| 5f 5f 4d 57 45 52 4b 53 | 5f 5f 0d 09 09 66 50 68 |__MWERKS|__...fPh|
|00002de0| 61 73 65 49 6e 66 6f 5b | 61 50 68 61 73 65 5d 2e |aseInfo[|aPhase].|
|00002df0| 66 69 6e 69 73 68 65 64 | 20 3d 20 54 52 55 45 3b |finished| = TRUE;|
|00002e00| 0d 23 65 6e 64 69 66 0d | 09 09 73 65 74 50 68 61 |.#endif.|..setPha|
|00002e10| 73 65 28 61 50 68 61 73 | 65 20 2b 31 29 3b 0d 09 |se(aPhas|e +1);..|
|00002e20| 09 69 66 20 28 66 49 74 | 65 72 61 74 6f 72 29 20 |.if (fIt|erator) |
|00002e30| 7b 0d 09 09 09 66 49 74 | 65 72 61 74 6f 72 2d 3e |{....fIt|erator->|
|00002e40| 73 65 74 46 6f 72 77 61 | 72 64 28 21 66 49 74 65 |setForwa|rd(!fIte|
|00002e50| 72 61 74 6f 72 2d 3e 69 | 73 46 6f 72 77 61 72 64 |rator->i|sForward|
|00002e60| 28 29 29 3b 0d 09 09 09 | 66 49 74 65 72 61 74 6f |());....|fIterato|
|00002e70| 72 2d 3e 72 65 73 65 74 | 28 29 3b 0d 09 09 7d 0d |r->reset|();...}.|
|00002e80| 09 7d 0d 7d 0d 09 0d 76 | 6f 69 64 20 43 53 74 61 |.}.}...v|oid CSta|
|00002e90| 6e 64 41 70 70 3a 3a 65 | 78 69 74 28 76 6f 69 64 |ndApp::e|xit(void|
|00002ea0| 29 0d 7b 0d 7d 0d 0d 2f | 2a 2a 2a 2a 2a 2a 2a 2a |).{.}../|********|
|00002eb0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002ec0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002ed0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002ee0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00002ef0| 2a 2a 2a 2a 0d 09 67 65 | 74 54 61 72 67 65 74 54 |****..ge|tTargetT|
|00002f00| 6f 74 61 6c 73 20 2d 20 | 54 68 69 73 20 6d 65 74 |otals - |This met|
|00002f10| 68 6f 64 20 67 65 74 73 | 20 74 68 65 20 74 61 72 |hod gets| the tar|
|00002f20| 67 65 74 20 74 6f 74 61 | 6c 73 20 66 72 6f 6d 20 |get tota|ls from |
|00002f30| 74 68 65 20 54 65 78 74 | 42 6f 78 65 73 0d 09 69 |the Text|Boxes..i|
|00002f40| 6e 20 74 68 65 20 6d 61 | 69 6e 20 64 69 61 6c 6f |n the ma|in dialo|
|00002f50| 67 20 66 6f 72 20 65 61 | 63 68 20 6f 66 20 74 68 |g for ea|ch of th|
|00002f60| 65 20 35 20 70 68 61 73 | 65 73 2e 09 49 66 20 74 |e 5 phas|es..If t|
|00002f70| 68 65 72 65 20 69 73 20 | 61 6e 79 20 6f 66 20 74 |here is |any of t|
|00002f80| 68 65 0d 09 74 6f 74 61 | 6c 73 20 74 68 61 74 20 |he..tota|ls that |
|00002f90| 61 72 65 20 6f 75 74 20 | 6f 66 20 72 61 6e 67 65 |are out |of range|
|00002fa0| 2c 09 74 68 65 20 74 65 | 78 74 20 69 6e 20 74 68 |,.the te|xt in th|
|00002fb0| 65 20 54 65 78 74 42 6f | 78 65 73 20 77 69 6c 6c |e TextBo|xes will|
|00002fc0| 20 62 65 20 61 64 6a 75 | 73 74 65 64 0d 09 74 6f | be adju|sted..to|
|00002fd0| 20 62 65 20 77 69 74 68 | 69 6e 20 72 61 6e 67 65 | be with|in range|
|00002fe0| 2e 0d 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |..******|********|
|00002ff0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003000| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003010| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003020| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2f |********|*******/|
|00003030| 0d 76 6f 69 64 09 43 53 | 74 61 6e 64 41 70 70 3a |.void.CS|tandApp:|
|00003040| 3a 67 65 74 54 61 72 67 | 65 74 54 6f 74 61 6c 73 |:getTarg|etTotals|
|00003050| 28 76 6f 69 64 29 0d 7b | 0d 09 73 68 6f 72 74 09 |(void).{|..short.|
|00003060| 09 09 69 6e 64 65 78 3b | 0d 09 0d 09 66 6f 72 20 |..index;|....for |
|00003070| 28 69 6e 64 65 78 20 3d | 20 6b 4d 69 6e 50 68 61 |(index =| kMinPha|
|00003080| 73 65 3b 20 69 6e 64 65 | 78 20 3c 3d 20 6b 4d 61 |se; inde|x <= kMa|
|00003090| 78 50 68 61 73 65 3b 20 | 69 6e 64 65 78 2b 2b 29 |xPhase; |index++)|
|000030a0| 0d 09 09 66 50 68 61 73 | 65 49 6e 66 6f 5b 69 6e |...fPhas|eInfo[in|
|000030b0| 64 65 78 5d 2e 74 61 72 | 67 65 74 20 3d 20 64 65 |dex].tar|get = de|
|000030c0| 66 61 75 6c 74 5f 76 61 | 6c 73 5b 69 6e 64 65 78 |fault_va|ls[index|
|000030d0| 5d 3b 0d 7d 0d 0d 2f 2a | 2a 2a 2a 2a 2a 2a 2a 2a |];.}../*|********|
|000030e0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|000030f0| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003100| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003110| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 0d 09 61 56 |********|****..aV|
|00003120| 61 6c 75 65 20 69 73 20 | 6d 69 63 72 6f 73 65 63 |alue is |microsec|
|00003130| 6f 6e 64 73 20 6f 66 20 | 74 69 6d 65 2e 0d 0d 2a |onds of |time...*|
|00003140| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003150| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003160| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003170| 2a 2a 2a 2a 2a 2a 2a 2a | 2a 2a 2a 2a 2a 2a 2a 2a |********|********|
|00003180| 2a 2a 2a 2a 2f 0d 76 6f | 69 64 20 43 53 74 61 6e |****/.vo|id CStan|
|00003190| 64 41 70 70 3a 3a 67 65 | 74 54 69 6d 65 28 6c 6f |dApp::ge|tTime(lo|
|000031a0| 6e 67 20 61 56 61 6c 75 | 65 2c 20 63 68 61 72 20 |ng aValu|e, char |
|000031b0| 2a 61 53 74 72 69 6e 67 | 29 0d 7b 0d 09 75 6e 73 |*aString|).{..uns|
|000031c0| 69 67 6e 65 64 20 6c 6f | 6e 67 09 76 61 6c 75 65 |igned lo|ng.value|
|000031d0| 09 3d 20 28 75 6e 73 69 | 67 6e 65 64 20 6c 6f 6e |.= (unsi|gned lon|
|000031e0| 67 29 61 56 61 6c 75 65 | 3b 0d 09 75 6e 73 69 67 |g)aValue|;..unsig|
|000031f0| 6e 65 64 20 6c 6f 6e 67 | 09 74 68 6f 75 73 09 3d |ned long|.thous.=|
|00003200| 20 28 28 76 61 6c 75 65 | 20 25 20 31 30 30 30 30 | ((value| % 10000|
|00003210| 30 30 29 20 2f 20 31 30 | 30 29 3b 09 2f 2f 20 67 |00) / 10|0);.// g|
|00003220| 65 74 20 74 68 6f 75 73 | 61 6e 64 74 68 73 20 6f |et thous|andths o|
|00003230| 66 20 73 65 63 6f 6e 64 | 73 0d 09 75 6e 73 69 67 |f second|s..unsig|
|00003240| 6e 65 64 20 6c 6f 6e 67 | 09 73 65 63 73 09 3d 20 |ned long|.secs.= |
|00003250| 28 28 76 61 6c 75 65 20 | 2f 20 30 78 31 30 30 30 |((value |/ 0x1000|
|00003260| 30 30 29 20 25 20 36 30 | 29 3b 09 2f 2f 20 67 65 |00) % 60|);.// ge|
|00003270| 74 20 73 65 63 6f 6e 64 | 73 0d 09 75 6e 73 69 67 |t second|s..unsig|
|00003280| 6e 65 64 20 6c 6f 6e 67 | 09 6d 69 6e 73 09 3d 20 |ned long|.mins.= |
|00003290| 28 76 61 6c 75 65 20 2f | 20 28 30 78 31 30 30 30 |(value /| (0x1000|
|000032a0| 30 30 20 2a 20 36 30 29 | 29 3b 09 2f 2f 20 67 65 |00 * 60)|);.// ge|
|000032b0| 74 20 6d 69 6e 75 74 65 | 73 0d 0d 09 73 70 72 69 |t minute|s...spri|
|000032c0| 6e 74 66 28 61 53 74 72 | 69 6e 67 2c 20 22 25 32 |ntf(aStr|ing, "%2|
|000032d0| 2e 30 6c 75 3a 25 32 2e | 32 6c 75 2e 25 34 2e 34 |.0lu:%2.|2lu.%4.4|
|000032e0| 6c 75 22 2c 20 6d 69 6e | 73 2c 20 73 65 63 73 2c |lu", min|s, secs,|
|000032f0| 20 74 68 6f 75 73 29 3b | 0d 7d 0d 0d 23 69 66 64 | thous);|.}..#ifd|
|00003300| 65 66 20 71 4e 65 6f 54 | 68 72 65 61 64 73 0d 76 |ef qNeoT|hreads.v|
|00003310| 6f 69 64 20 43 53 74 61 | 6e 64 41 70 70 3a 3a 6b |oid CSta|ndApp::k|
|00003320| 69 6c 6c 54 68 72 65 61 | 64 73 28 76 6f 69 64 29 |illThrea|ds(void)|
|00003330| 0d 7b 0d 09 73 68 6f 72 | 74 09 69 6e 64 65 78 3b |.{..shor|t.index;|
|00003340| 0d 0d 09 66 6f 72 20 28 | 69 6e 64 65 78 20 3d 20 |...for (|index = |
|00003350| 30 3b 20 69 6e 64 65 78 | 20 3c 20 6b 4d 61 78 54 |0; index| < kMaxT|
|00003360| 68 72 65 61 64 73 3b 20 | 69 6e 64 65 78 2b 2b 29 |hreads; |index++)|
|00003370| 20 7b 0d 09 09 69 66 20 | 28 66 54 68 72 65 61 64 | {...if |(fThread|
|00003380| 49 6e 66 6f 5b 69 6e 64 | 65 78 5d 2e 73 74 61 74 |Info[ind|ex].stat|
|00003390| 65 20 3d 3d 20 6b 41 6c | 69 76 65 29 20 7b 0d 09 |e == kAl|ive) {..|
|000033a0| 09 09 4e 65 6f 41 73 73 | 65 72 74 28 66 54 68 72 |..NeoAss|ert(fThr|
|000033b0| 65 61 64 49 6e 66 6f 5b | 69 6e 64 65 78 5d 2e 74 |eadInfo[|index].t|
|000033c0| 68 72 65 61 64 29 3b 0d | 09 09 09 66 54 68 72 65 |hread);.|...fThre|
|000033d0| 61 64 49 6e 66 6f 5b 69 | 6e 64 65 78 5d 2e 73 74 |adInfo[i|ndex].st|
|000033e0| 61 74 65 20 3d 20 6b 44 | 69 65 3b 0d 09 09 09 43 |ate = kD|ie;....C|
|000033f0| 4e 65 6f 54 68 72 65 61 | 64 4e 61 74 69 76 65 3a |NeoThrea|dNative:|
|00003400| 3a 59 69 65 6c 64 28 66 | 54 68 72 65 61 64 49 6e |:Yield(f|ThreadIn|
|00003410| 66 6f 5b 69 6e 64 65 78 | 5d 2e 74 68 72 65 61 64 |fo[index|].thread|
|00003420| 29 3b 0d 09 09 09 66 54 | 68 72 65 61 64 49 6e 66 |);....fT|hreadInf|
|00003430| 6f 5b 69 6e 64 65 78 5d | 2e 74 68 72 65 61 64 20 |o[index]|.thread |
|00003440| 3d 20 6e 69 6c 3b 0d 09 | 09 7d 0d 09 7d 0d 7d 0d |= nil;..|.}..}.}.|
|00003450| 23 65 6e 64 69 66 0d 0d | 23 69 66 64 65 66 20 71 |#endif..|#ifdef q|
|00003460| 4e 65 6f 54 68 72 65 61 | 64 73 0d 43 42 65 6e 63 |NeoThrea|ds.CBenc|
|00003470| 68 54 68 72 65 61 64 3a | 3a 43 42 65 6e 63 68 54 |hThread:|:CBenchT|
|00003480| 68 72 65 61 64 28 54 68 | 72 65 61 64 49 6e 66 6f |hread(Th|readInfo|
|00003490| 20 2a 61 49 6e 66 6f 2c | 20 63 6f 6e 73 74 20 4e | *aInfo,| const N|
|000034a0| 65 6f 54 68 72 65 61 64 | 54 79 70 65 20 61 54 79 |eoThread|Type aTy|
|000034b0| 70 65 2c 20 76 6f 69 64 | 20 2a 2a 61 41 72 67 2c |pe, void| **aArg,|
|000034c0| 20 63 6f 6e 73 74 20 53 | 69 7a 65 20 61 53 74 61 | const S|ize aSta|
|000034d0| 63 6b 53 69 7a 65 2c 20 | 63 6f 6e 73 74 20 4e 65 |ckSize, |const Ne|
|000034e0| 6f 54 68 72 65 61 64 4f | 70 74 69 6f 6e 73 20 61 |oThreadO|ptions a|
|000034f0| 4f 70 74 69 6f 6e 73 29 | 0d 09 3a 20 43 4e 65 6f |Options)|..: CNeo|
|00003500| 54 68 72 65 61 64 4e 61 | 74 69 76 65 28 61 54 79 |ThreadNa|tive(aTy|
|00003510| 70 65 2c 20 61 41 72 67 | 2c 20 61 53 74 61 63 6b |pe, aArg|, aStack|
|00003520| 53 69 7a 65 2c 20 61 4f | 70 74 69 6f 6e 73 29 0d |Size, aO|ptions).|
|00003530| 7b 0d 09 66 53 65 74 54 | 69 6d 65 72 20 3d 20 46 |{..fSetT|imer = F|
|00003540| 41 4c 53 45 3b 0d 09 66 | 49 6e 66 6f 20 3d 20 61 |ALSE;..f|Info = a|
|00003550| 49 6e 66 6f 3b 0d 7d 0d | 0d 6c 6f 6e 67 20 43 42 |Info;.}.|.long CB|
|00003560| 65 6e 63 68 54 68 72 65 | 61 64 3a 3a 72 75 6e 28 |enchThre|ad::run(|
|00003570| 76 6f 69 64 29 0d 7b 0d | 09 77 68 69 6c 65 20 28 |void).{.|.while (|
|00003580| 66 49 6e 66 6f 2d 3e 73 | 74 61 74 65 20 3d 3d 20 |fInfo->s|tate == |
|00003590| 6b 41 6c 69 76 65 29 20 | 7b 0d 09 09 28 28 43 53 |kAlive) |{...((CS|
|000035a0| 74 61 6e 64 41 70 70 20 | 2a 29 67 4e 65 6f 41 70 |tandApp |*)gNeoAp|
|000035b0| 70 29 2d 3e 64 6f 53 6f | 6d 65 57 6f 72 6b 28 66 |p)->doSo|meWork(f|
|000035c0| 49 6e 66 6f 2d 3e 70 68 | 61 73 65 2c 20 26 66 54 |Info->ph|ase, &fT|
|000035d0| 69 6d 65 72 29 3b 0d 09 | 0d 09 09 79 69 65 6c 64 |imer);..|...yield|
|000035e0| 28 29 3b 0d 09 7d 0d 0d | 09 66 49 6e 66 6f 2d 3e |();..}..|.fInfo->|
|000035f0| 74 68 72 65 61 64 20 3d | 20 6e 69 6c 3b 0d 0d 09 |thread =| nil;...|
|00003600| 72 65 74 75 72 6e 20 66 | 52 65 73 75 6c 74 3b 0d |return f|Result;.|
|00003610| 7d 0d 0d 2f 2f 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |}..// --|--------|
|00003620| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003630| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003640| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003650| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003660| 2d 0d 2f 2f 09 09 a5 20 | 68 61 6e 64 6c 65 53 77 |-.//... |handleSw|
|00003670| 61 70 49 6e 0d 2f 2f 20 | 2d 2d 2d 2d 2d 2d 2d 2d |apIn.// |--------|
|00003680| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003690| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000036a0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000036b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000036c0| 2d 2d 2d 0d 2f 2f 09 43 | 61 6c 6c 62 61 63 6b 20 |---.//.C|allback |
|000036d0| 74 6f 20 74 68 65 20 54 | 68 72 65 61 64 20 4d 61 |to the T|hread Ma|
|000036e0| 6e 61 67 65 72 2e 0d 2f | 2f 09 0d 76 6f 69 64 20 |nager../|/..void |
|000036f0| 43 42 65 6e 63 68 54 68 | 72 65 61 64 3a 3a 68 61 |CBenchTh|read::ha|
|00003700| 6e 64 6c 65 53 77 61 70 | 49 6e 28 76 6f 69 64 29 |ndleSwap|In(void)|
|00003710| 0d 7b 0d 09 69 6e 68 65 | 72 69 74 65 64 3a 3a 68 |.{..inhe|rited::h|
|00003720| 61 6e 64 6c 65 53 77 61 | 70 49 6e 28 29 3b 0d 0d |andleSwa|pIn();..|
|00003730| 09 2f 2f 20 74 75 72 6e | 20 74 69 6d 65 72 73 20 |.// turn| timers |
|00003740| 62 61 63 6b 20 6f 6e 0d | 09 69 66 20 28 66 53 65 |back on.|.if (fSe|
|00003750| 74 54 69 6d 65 72 29 20 | 7b 0d 09 09 49 6e 73 58 |tTimer) |{...InsX|
|00003760| 54 69 6d 65 28 28 51 45 | 6c 65 6d 20 2a 29 26 66 |Time((QE|lem *)&f|
|00003770| 54 69 6d 65 72 29 3b 0d | 09 09 50 72 69 6d 65 54 |Timer);.|..PrimeT|
|00003780| 69 6d 65 28 28 51 45 6c | 65 6d 20 2a 29 26 66 54 |ime((QEl|em *)&fT|
|00003790| 69 6d 65 72 2c 20 30 29 | 3b 0d 09 7d 0d 7d 0d 0d |imer, 0)|;..}.}..|
|000037a0| 2f 2f 20 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |// -----|--------|
|000037b0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000037c0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000037d0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|000037e0| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 0d 2f |--------|------./|
|000037f0| 2f 09 09 a5 20 68 61 6e | 64 6c 65 53 77 61 70 4f |/... han|dleSwapO|
|00003800| 75 74 0d 2f 2f 20 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |ut.// --|--------|
|00003810| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003820| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003830| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003840| 2d 2d 2d 2d 2d 2d 2d 2d | 2d 2d 2d 2d 2d 2d 2d 2d |--------|--------|
|00003850| 2d 0d 2f 2f 09 43 61 6c | 6c 62 61 63 6b 20 74 6f |-.//.Cal|lback to|
|00003860| 20 74 68 65 20 54 68 72 | 65 61 64 20 4d 61 6e 61 | the Thr|ead Mana|
|00003870| 67 65 72 2e 0d 2f 2f 09 | 0d 76 6f 69 64 20 43 42 |ger..//.|.void CB|
|00003880| 65 6e 63 68 54 68 72 65 | 61 64 3a 3a 68 61 6e 64 |enchThre|ad::hand|
|00003890| 6c 65 53 77 61 70 4f 75 | 74 28 76 6f 69 64 29 0d |leSwapOu|t(void).|
|000038a0| 7b 0d 09 2f 2f 20 74 75 | 72 6e 20 74 69 6d 65 72 |{..// tu|rn timer|
|000038b0| 73 20 6f 66 66 0d 09 66 | 53 65 74 54 69 6d 65 72 |s off..f|SetTimer|
|000038c0| 20 3d 20 66 54 69 6d 65 | 72 2e 71 54 79 70 65 26 | = fTime|r.qType&|
|000038d0| 30 78 38 30 30 30 3b 0d | 09 69 66 20 28 66 53 65 |0x8000;.|.if (fSe|
|000038e0| 74 54 69 6d 65 72 29 20 | 7b 0d 09 09 52 6d 76 54 |tTimer) |{...RmvT|
|000038f0| 69 6d 65 28 28 51 45 6c | 65 6d 20 2a 29 26 66 54 |ime((QEl|em *)&fT|
|00003900| 69 6d 65 72 29 3b 0d 09 | 09 66 54 69 6d 65 72 2e |imer);..|.fTimer.|
|00003910| 74 6d 43 6f 75 6e 74 20 | 2b 3d 20 67 4c 6f 6f 70 |tmCount |+= gLoop|
|00003920| 4f 76 65 72 68 65 61 64 | 3b 0d 09 7d 0d 0d 09 69 |Overhead|;..}...i|
|00003930| 6e 68 65 72 69 74 65 64 | 3a 3a 68 61 6e 64 6c 65 |nherited|::handle|
|00003940| 53 77 61 70 4f 75 74 28 | 29 3b 0d 7d 0d 0d 23 65 |SwapOut(|);.}..#e|
|00003950| 6e 64 69 66 0d 0d 00 00 | 00 00 00 00 00 00 00 00 |ndif....|........|
|00003960| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003970| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003980| 00 00 01 00 00 00 01 98 | 00 00 00 98 00 00 00 6a |........|.......j|
|00003990| 49 44 29 0d 20 20 20 20 | 3d 20 30 78 41 39 37 39 |ID). |= 0xA979|
|000039a0| 3b 20 0d 70 61 73 63 61 | 6c 20 76 6f 69 64 20 46 |; .pasca|l void F|
|000039b0| 0c 43 53 74 61 6e 64 41 | 70 70 2e 63 70 5a 02 00 |.CStandA|pp.cpZ..|
|000039c0| 00 00 54 45 58 54 4b 41 | 48 4c 01 00 00 3c 00 00 |..TEXTKA|HL...<..|
|000039d0| 00 00 54 45 58 54 4b 41 | 48 4c 01 00 00 3c 00 00 |..TEXTKA|HL...<..|
|000039e0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|000039f0| 00 00 a5 33 03 6a 00 00 | 38 d6 00 00 02 02 6d 20 |...3.j..|8.....m |
|00003a00| 70 61 72 61 6d 30 2c 43 | 6f 6e 73 74 53 74 72 32 |param0,C|onstStr2|
|00003a10| 35 35 50 61 72 61 6d 20 | 70 61 72 61 6d 31 2c 43 |55Param |param1,C|
|00003a20| 6f 6e 73 74 53 74 72 32 | 35 35 50 61 72 61 6d 20 |onstStr2|55Param |
|00003a30| 70 61 72 61 6d 32 2c 0d | 20 20 20 20 43 6f 6e 73 |param2,.| Cons|
|00003a40| 74 53 74 72 32 35 35 50 | 61 72 61 6d 20 70 61 72 |tStr255P|aram par|
|00003a50| 61 6d 33 29 0d 20 20 20 | 20 3d 20 30 78 41 39 38 |am3). | = 0xA98|
|00003a60| 42 3b 20 0d 70 61 73 63 | 61 6c 20 76 6f 69 64 20 |B; .pasc|al void |
|00003a70| 4d 6f 64 61 6c 44 69 61 | 6c 6f 67 28 4d 6f 64 61 |ModalDia|log(Moda|
|00003a80| 00 00 00 0a 00 00 03 f9 | 00 31 00 00 00 00 00 00 |........|.1......|
|00003a90| 00 0a 00 00 1b 87 ff ff | 00 00 00 00 00 00 00 0a |........|........|
|00003aa0| 00 00 28 f1 ff ff 00 00 | 00 00 00 00 00 1e 00 28 |..(.....|.......(|
|00003ab0| 00 0a 01 c2 02 80 00 28 | 00 0a 01 c2 02 80 00 00 |.......(|........|
|00003ac0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 48 |........|.......H|
|00003ad0| 00 09 4d 6f 6e 61 63 6f | 00 00 00 00 00 00 00 00 |..Monaco|........|
|00003ae0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003af0| 00 00 00 03 00 04 00 28 | 00 0a 01 c2 02 80 00 28 |.......(|.......(|
|00003b00| 00 0a 01 c2 02 80 aa b0 | 2d 4a 00 00 00 00 00 00 |........|-J......|
|00003b10| 00 00 00 00 00 00 01 00 | 00 00 01 00 00 00 01 98 |........|........|
|00003b20| 00 00 00 98 00 00 00 6a | 01 bb 9f 88 38 30 00 00 |.......j|....80..|
|00003b30| 00 1c 00 6a 00 01 42 4b | 50 54 00 02 00 12 4d 50 |...j..BK|PT....MP|
|00003b40| 53 52 00 01 00 36 66 7a | ff ff 00 00 00 00 00 00 |SR...6fz|........|
|00003b50| 00 00 17 f7 ff ff 00 00 | 00 0e 00 00 00 00 38 f4 |........|......8.|
|00003b60| ff ff 00 00 00 1c 00 00 | 00 00 03 f0 ff ff 00 00 |........|........|
|00003b70| 00 2a 00 00 00 00 03 ed | ff ff 00 00 00 4c 00 00 |.*......|.....L..|
|00003b80| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003b90| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003ba0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003bb0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003bc0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003bd0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003be0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
|00003bf0| 00 00 00 00 00 00 00 00 | 00 00 00 00 00 00 00 00 |........|........|
+--------+-------------------------+-------------------------+--------+--------+